Câu trả lời:
Yêu thích của tôi là rsync
. Nó đủ thông minh để chỉ sao chép những gì phải được sao chép (tức là thay đổi hoặc mới).
rsync -avz /source/path user@desthost:/destination/path/
Lưu ý cuối cùng /
ở cuối để yêu cầu rsync sao chép bên trong đường dẫn đó (không qua nó).
rsync
chăm sóc quản lý kết nối ssh cho bạn. Các avz
tùy chọn (điển hình) yêu cầu rsync
sử dụng chế độ lưu trữ (tar), để sao chép đệ quy và giữ càng nhiều giá trị ngày và người dùng càng tốt. Các v
tùy chọn là tiết để cho bạn thấy những gì hiện đang xảy ra. Các z
tùy chọn sẽ nén (nén) việc chuyển nhượng để hy vọng tiết kiệm thời gian và băng thông.
rsync
là rất mạnh mẽ và được sử dụng bởi hầu hết các chuyên gia, tuy nhiên bạn có thể muốn kiểm tra nó trước tiên bằng cách sử dụng dữ liệu không có giá trị để đảm bảo đường dẫn và các tùy chọn phù hợp với yêu cầu.
Nếu bạn cần sử dụng rsync qua SSH trên một cổng không chuẩn như 2222, bạn có thể sử dụng lệnh sau ( xem bài viết này ):
rsync -avz -e 'ssh -p 2222' /source/path user@desthost:/destination/path/
Bạn đang tìm kiếm một ống nhựa tar .
Tôi đã viết một câu trả lời làm việc tốt trong một câu hỏi khác. Nó sử dụng SSH-Agent để di chuyển một bãi chứa mysql: Cách nhanh nhất để di chuyển nhiều cơ sở dữ liệu sang một máy chủ mới
Kết hợp điều này với câu trả lời của jscott