Làm cách nào để sử dụng rsync từ PC Windows đến máy chủ Linux từ xa?


23

Làm cách nào để sử dụng rsynclệnh từ máy Windows 7 cục bộ đến máy chủ Linux từ xa?

Phần mềm nào cần thiết trên máy Windows 7 để sử dụng rsync?

Máy chủ Linux từ xa đang sử dụng Linux AMI của Amazon. Lệnh rsyncđã được bật trên máy và tôi có thể chỉnh sửa mọi quyền truy cập cần thiết vào máy.

Điều này nhằm mục đích thiết lập máy chủ web trên máy từ xa và chỉnh sửa trên máy cục bộ của tôi và giữ các tệp đồng bộ.

Tôi không muốn truy cập hai chiều giữa các máy, tôi sẽ chỉ chỉnh sửa các tệp trên máy cục bộ của mình và cập nhật chúng trên máy từ xa.

CẬP NHẬT:

Tôi đã cài đặt cygwin trên máy Windows 7 của mình và cài đặt gói rsync . Ai đó có thể cung cấp các bước để thiết lập kết nối từ máy Windows 7 đến máy chủ Linux từ xa không?

Nói rằng tôi muốn có một thư mục được gọi C:\wwwtrên máy Windows của mình và tiếp tục cập nhật nó \var\wwwtrên máy từ xa, làm thế nào để tôi làm điều đó? Đây không phải là bản sao lưu, nó cập nhật các tệp mà tôi chỉnh sửa bằng máy tính cục bộ của mình.

Câu trả lời:


9

Tôi có MinGW (còn được gọi là 'Git Bash' ) trên Windows 7 và một tệp bó chạy rsync để sao lưu các tệp trên ổ đĩa ngoài trên máy tính linux từ xa. Đây là tệp bó ( my_rsync_file.bat)

REM Changing directory... (assuming we are in G:/My Documents/My Various Things)
cd ../
REM starting rsync...
bash -c "rsync -avzh -P --stats --timeout=60  --exclude Downloads . 'my_remote_linux_computer@128.95.170.200:/media/my_remote_linux_computer/LaCie/My\ Documents'"

Dưới đây là một chút giải thích từng dòng:

REM Changing directory... (assuming we are in G:/My Documents/My Various Things)

Điều này chỉ phát ra một thông điệp để nhắc nhở tôi những gì đang xảy ra.

cd ../

Điều này thay đổi thư mục một cấp lên từ nơi tệp bó (đến 'Tài liệu của tôi'). Tệp bó nằm trong một ổ đĩa ngoài trên máy tính Windows của tôi. Tôi muốn đồng bộ tất cả thư mục 'Tài liệu của tôi' trên ổ đĩa ngoài này với một thư mục cùng tên trên một ổ đĩa ngoài trên máy tính linux từ xa của tôi.

REM starting rsync...

Chỉ cần in một tin nhắn khác.

bash -c "rsync -avz -P --stats --timeout=60 --exclude Downloads . my_remote_linux_computer@128.95.155.200:/media/my_remote_linux_computer/LaCie/My\\ Documents"

bash: bắt đầu MinGW có thư viện rsync tích hợp
-c: không chắc đây là gì
rsync: thư viện để đồng bộ hóa các tệp, đi kèm với MinGW
-avzh: a-Archive, v-Verbose, z-Compress, h-Human-read, đây là những tùy chọn phổ biến (xem thêm: http://linux.die.net/man/1/rsync )
-P: hiển thị tiến trình cho các tệp lớn để tôi biết liệu nó có bị đóng băng hay không
--stats: hiển thị tóm tắt về số lượng tệp và byte được chuyển ở cuối
--timeout=60: giết nó sau 60 giây nếu nó bị kẹt
--excludebỏ qua các tệp / thư mục bị đồng bộ hóa, trong trường hợp này tôi loại trừ một thư mục có tên 'Tải xuống'
.: biểu thị đồng bộ hóa tất cả nội dung của 'Tài liệu của tôi' (mong muốn điều được chỉ định loại trừ trong dòng trên)
my_remote_linux_computer: name của máy tính linux từ xa của tôi (không phải tên thật của nó;)
@128.95.155.200: địa chỉ IP của máy tính linux từ xa của tôi, từ https://www.whatismyip.com/ (không phải địa chỉ IP thực tế của tôi :)
/media/my_remote_linux_computer/LaCie/My\\ Documents: đường dẫn đến thư mục trên máy tính linux từ xa mà tôi muốn nhận tệp. Đó là một ổ đĩa ngoài.

Lưu ý rằng không gian trong "Tài liệu của tôi" được thoát bằng hai dấu gạch chéo ngược và tên đầy đủ và thư mục của đích từ xa được bao quanh bởi dấu ngoặc kép.

Khi tôi bắt đầu nhấp đúp vào tập tin bat tôi được nhắc nhập mật khẩu cho máy tính linux từ xa của tôi. Khi nó hoàn thành, tôi nhận được một số đầu ra tóm tắt và được nhắc nhấn bất kỳ phím nào để đóng.


Mô tả -ctham số từ bash man: Nếu có tùy chọn -c, thì các lệnh được đọc từ chuỗi. Nếu có các đối số sau chuỗi, chúng được gán cho các tham số vị trí, bắt đầu bằng $ 0.
Lukasz Stelmach

6

Nếu bạn muốn có một ứng dụng miễn phí kết hợp cygwin và rsync với giao diện đồ họa đẹp, hãy xem Deltacopy :

http://www.aboutmyip.com/ AboutMyXApp/DeltaCopy.jsp

  • Sao lưu cộng dồn - Sao chép một phần của tệp thực sự được sửa đổi
  • Lập lịch tác vụ - Hồ sơ trong DeltaCopy có thể chạy dựa trên lịch biểu
  • Thông báo qua email - Quản trị viên có thể nhận được email xác nhận khi chuyển khoản thành công cũng như không thành công
  • Khôi phục bằng một cú nhấp chuột - Các tập tin sao lưu có thể dễ dàng khôi phục.
  • Môi trường thân thiện với Windows - Không cần sửa đổi thủ công các tệp cấu hình hoặc chơi xung quanh với các tùy chọn dòng lệnh.

6

Một tùy chọn có thể là cài đặt rsync bằng cách cài đặt cygwin trên windows. Có lẽ có một cách tiếp cận trực tiếp hơn nhiều cho điều đó.

Một tùy chọn khác có thể là rsync từ phía linux - bạn có thể thiết lập một phương tiện để máy từ xa truy cập các tệp cục bộ, sau đó rsync từ đó (xem phần gắn kết chia sẻ smb / cifs).

Tôi nghi ngờ vẫn còn những lựa chọn tốt hơn, nhưng có lẽ điều đó sẽ giúp ích một chút.


Cập nhật năm 2017

Với hệ thống con Linux có sẵn trong Windows 10, có lẽ bạn có thể cài đặt máy chủ ssh & rsync rất dễ dàng với điều đó và sử dụng rsync với Windows thông qua đó.


5

MinGW có một rsync tích hợp có vẻ hoạt động khá tốt. Nó thậm chí còn có chế độ daemon - mặc dù tôi chưa thử nghiệm điều đó. Tôi khuyên dùng MinGW trên cygwin vì một số lý do: MinGW là bản cài đặt nhỏ hơn và là bản địa của Windows.


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.