Nhận lỗi trong khi sao lưu toàn bộ centos bằng tar


10

Tôi đang thử lệnh này

tar cvpzf /TEMP_BACKUPS/backup.tgz --exclude=/proc --exclude=/lost+found  --exclude=/tmp --exclude=/TEMP_BACKUPS --exclude=/mnt --exclude=/sys / > /TEMP_BACKUPS/mylog.txt

và tôi đang nhận được lỗi này. Tôi đã thử hai lần

tar: Removing leading `/' from member names
tar: /dev/log: socket ignored
tar: Removing leading `/' from hard link targets
tar: /selinux/policy: Cannot open: Invalid argument
tar: /var/spool/postfix/public/flush: socket ignored
tar: /var/spool/postfix/public/cleanup: socket ignored
tar: /var/spool/postfix/public/showq: socket ignored
tar: /var/spool/postfix/private/defer: socket ignored
tar: /var/spool/postfix/private/virtual: socket ignored
tar: /var/spool/postfix/private/proxywrite: socket ignored
tar: /var/spool/postfix/private/verify: socket ignored
tar: /var/spool/postfix/private/anvil: socket ignored
tar: /var/spool/postfix/private/lmtp: socket ignored
tar: /var/spool/postfix/private/bounce: socket ignored
tar: /var/spool/postfix/private/relay: socket ignored
tar: /var/spool/postfix/private/scache: socket ignored
tar: /var/spool/postfix/private/retry: socket ignored
tar: /var/spool/postfix/private/error: socket ignored
tar: /var/spool/postfix/private/rewrite: socket ignored
tar: /var/spool/postfix/private/tlsmgr: socket ignored
tar: /var/spool/postfix/private/local: socket ignored
tar: /var/spool/postfix/private/discard: socket ignored
tar: /var/spool/postfix/private/trace: socket ignored
tar: /var/spool/postfix/private/smtp: socket ignored
tar: /var/spool/postfix/private/proxymap: socket ignored
tar: /var/lib/mysql/mysql.sock: socket ignored
tar: /var/www/html/run/wsgi.1458.0.1.sock: socket ignored
tar: /var/www/html/run/wsgi.4861.1.1.sock: socket ignored
tar: /var/www/html/run/wsgi.1178.0.1.sock: socket ignored
tar: /var/www/html/run/wsgi.1179.0.1.sock: socket ignored
tar: /var/run/dbus/system_bus_socket: socket ignored
tar: /var/run/abrt/abrt.socket: socket ignored
tar: /var/run/rpcbind.sock: socket ignored
tar: /var/run/portreserve/socket: socket ignored
tar: /var/run/nscd/socket: socket ignored
tar: Exiting with failure status due to previous errors

tôi cần làm gì để sao lưu toàn bộ

Câu trả lời:


14

Lưu ý rằng tarlệnh của bạn đang hoàn thành thành công; nó chỉ phàn nàn về các mục ổ cắm. Tiffany đang đề xuất một cơ chế để lọc ra những thông báo lỗi cụ thể đó, mặc dù tarvậy vẫn sẽ thoát với mã lỗi.

Bạn cũng có thể ăn một danh sách các ổ cắm để tar's -Xtùy chọn để có họ loại trừ khỏi sao lưu, ví dụ như:

# find / -type s -print > /tmp/sockets-to-exclude
# tar cvpzf /TEMP_BACKUPS/backup.tgz -X /tmp/sockets-to-exclude \
  --exclude=/proc --exclude=/lost+found  --exclude=/tmp \
  --exclude=/TEMP_BACKUPS --exclude=/mnt --exclude=/sys / > /TEMP_BACKUPS/mylog.txt

Ưu điểm của kỹ thuật này là nó làm cho tarmã thoát của nó hữu ích hơn (nghĩa là bạn có thể sử dụng mã thoát để quyết định xem sao lưu đã hoàn thành thành công hay chưa).

Bạn cũng có thể rút ngắn dòng lệnh của mình bằng cách thay thế các --excludetùy chọn khác bằng một -X(aka --exclude-from) và chỉ cần liệt kê chúng trong một tệp.


Tôi cũng nên loại trừ /run?
ar2015

lỗi tiêu chuẩn find / -type s -print > /tmp/sockets-to-excludenên được chuyển hướng ở đâu đó (ví dụ /dev/null:), nếu không, hãy tìm những khiếu nại mà một số tệp được tạo trong quá trình tìm kiếm không tồn tại.
Javier Arias

16

Thực tế là tar thành công, nhưng in ra cảnh báo rằng các tệp socket đó bị bỏ qua

GNU tar thực sự cung cấp một tùy chọn để ngăn chặn các cảnh báo. Bạn có thể bỏ qua các lỗi "socket socket" bằng cách sử dụng lệnh bên dưới để tránh chạy lệnh find có thể mất nhiều thời gian để hoàn thành.

tar --warning='no-file-ignored' -cpzf  backup_name.tar.gz  /folder_to_backup

Liên kết này có nhiều chi tiết hơn


9

Ổ cắm là các tệp mức 0 được sử dụng bởi các quy trình daemon để liên lạc với nhau. Chúng được tạo ra và phá hủy khi cần thiết khi daemon bắt đầu và dừng lại. Họ có thể được bỏ qua một cách an toàn.

Bạn luôn có thể thoát khỏi chúng với tar <my_options> 2> >(grep -v 'socket ignored' >&2)


Tôi không hiểu, ý bạn là bằng cách bỏ qua các ổ cắm, liệu tar của tôi có chạy được không mà không thoát
user1865341
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.