Làm thế nào để giữ đường dẫn đầy đủ với rsync?


64

Khi sao lưu bằng rsync, làm cách nào để giữ cấu trúc thư mục đầy đủ?

Ví dụ: máy chủ từ xa là saturn và tôi muốn sao lưu saturn 's / home / udi / files / hình ảnh vào một thư mục cục bộ có tên là backup .

Tôi muốn có ( sao lưu ) cục bộ / home / udi / files / hình ảnh hơn là sao lưu / hình ảnh .

Câu trả lời:


76

Sử dụng -Rhoặc --relativetùy chọn để bảo toàn đường dẫn đầy đủ.


2

Một trường hợp sử dụng liên quan phổ biến khác là giữ một phần được chọn của cây thư mục /./, ví dụ nếu bạn muốn:

backup/files/pictures

bạn có thể viết:

rsync --relative /home/udi/./files/pictures backup

Phép thuật /./cho biết rsyncnơi bắt đầu tạo thư mục từ đó.


Điều này làm việc cho tôi! Phép thuật ./là một cấu trúc Linux hoặc cụ thể cho rsync? Chỉ cần cố gắng để có được một cái nhìn sâu sắc về hành vi này.
Flow2k

@ Flow2k chỉ là ma thuật rsync, đối với POSIX thì nó là dư thừa.
Ciro Santilli 新疆 心 心 事件

1

Với rsync Cygwin Windows và giả sử rsync từ xa đang trỏ đến thư mục gốc, tôi sẽ làm:

rsync -vtrz --delete server::rsyncid/home/udi/files/pictures /cygdrive/d/backup/home/udi/files

Điều đó sẽ đặt nội dung của thư mục hình ảnh từ xa trong / backup / home / udi / files / hình ảnh. Có lẽ cú pháp dưới unix sẽ tương tự.

JR


Nó không hữu ích vì chúng ta cần sao chép toàn bộ hệ thống phân cấp thư mục ở phía cục bộ trước khi thực hiện lệnh rsync.
Ludovic Kuty
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.