rsync bị treo sau một vài tệp được chuyển (Bash cho Windows sang FreeBSD)


12

Tôi đang sử dụng "Bash trên Ubuntu trên Windows", từ PC Windows 10 Pro, để sao lưu thư viện phương tiện của tôi sang máy chủ FreeBSD hoạt động như NAS của tôi (nó chạy NAS4Free). Điều này được sử dụng để làm việc hoàn hảo nhưng gần đây nó đã dừng hoạt động. Vì tôi không thay đổi bất cứ điều gì về phía mình, tôi cho rằng sự thay đổi đến từ một trong các Cập nhật Windows, không chắc chắn.

Trong mọi trường hợp, đây là những gì xảy ra. Chỉ sau khi một vài tệp được sao chép, chuyển rsync chỉ bị treo. Tôi đã để nó chạy qua đêm để xác nhận và nó chỉ bị treo trong nhiều giờ. Khi tôi tự hủy tác vụ bằng cách gửi CTRL + C đến thiết bị đầu cuối, tôi nhận được thông báo lỗi, một thời gian sẽ tiếp tục (khoảng 30 giây) và chương trình dừng lại:

arnaud@CLAVAIN:~$ rsync -arv --delete --no-compress /mnt/e/Music/ arnaud@nas4free.lan:~/pool1/lolilol/music
arnaud@nas4free.lan's password:
sending incremental file list
ost/Luke Cage (Original Soundtrack Album)/
ost/Luke Cage (Original Soundtrack Album)/40. Finding Chico.m4a
ost/Luke Cage (Original Soundtrack Album)/41. I Am Carl Lucas.m4a
ost/Luke Cage (Original Soundtrack Album)/42. Crispus Attucks.m4a
ost/Luke Cage (Original Soundtrack Album)/43. Hideout.m4a
ost/Luke Cage (Original Soundtrack Album)/44. Cuban Coffee.m4a
ost/Luke Cage (Original Soundtrack Album)/45. Like a Brother.m4a
ost/Luke Cage (Original Soundtrack Album)/46. Cottonmouth's Clamp.m4a
ost/Luke Cage (Original Soundtrack Album)/47. Survival.m4a
ost/Luke Cage (Original Soundtrack Album)/48. Cottonmouth Theme.m4a
ost/Luke Cage (Original Soundtrack Album)/49. Luke Cops.m4a
ost/Luke Cage (Original Soundtrack Album)/50. Crushin' On Reva.m4a
ost/Luke Cage (Original Soundtrack Album)/51. Beloved Reva.m4a
^Crsync error: unexplained error (code 130) at rsync.c(632) [sender=3.1.0]
[sender] io timeout after 60 seconds -- exiting
arnaud@CLAVAIN:~$

Bạn có thể thấy ^ C ở đâu, đó là khi tôi gửi tin nhắn kill. Đây là khi lỗi "lỗi: lỗi không giải thích được" và "hết thời gian chờ" xuất hiện.

Tôi đã thử một lệnh thay thế rsync -rltvzD --progress --delete, nhưng điều đó tạo ra cùng một lỗi.

Có cách nào tôi có thể khắc phục sự cố này tốt hơn để hiểu vấn đề là gì không? Lưu ý rằng nếu tôi làm điều này trên một ổ đĩa cục bộ (như ổ đĩa ngoài USB) thì rsync hoạt động tốt.


Dường như đối với rsync, Hệ thống con Windows cho Linux bị lỗi trong việc xử lý các danh sách được cung cấp bởi rsync. Điều này cần được báo cáo, và tôi đã làm.
Thomas D Quay số

Bạn có vấn đề # trên Github cho vấn đề này không? Có một số vấn đề khác được mở liên quan đến rsync, tất cả đều được khắc phục, nhưng những vấn đề đó không giải quyết được vấn đề của tôi.
Astaar

Điều này có vẻ như vấn đề được thảo luận ở đây trên Trang Github của WSL BashOnWindows: github.com/Microsoft/BashOnWindows/issues/2138
Gerald

thú vị đối với tôi, nếu tôi ctrl-z làm nền cho nó, thì fgtiền cảnh nó, rsync sẽ tiếp tục cho đến khi nó bị treo trên một tệp khác. nó dường như không liên quan đến các tệp lớn và -W đã không giải quyết vấn đề này cho tôi.
rev

Tương tự đối với tôi ... có ý kiến ​​gì không?
jlanza

Câu trả lời:


16

Gần đây tôi đã có vấn đề này (như ngày hôm qua), và những gì tôi phát hiện ra, là khi tôi rsynckhông có bản sao delta (sử dụng --whole-file/-Wcho toàn bộ chuyển tập tin), thì mọi thứ đều hoạt động hoàn hảo.

Tôi biết nó không phải là giải pháp tốt nhất, nhưng bây giờ là một sửa chữa nhanh chóng cho đến khi nó được vá.


1
Đây cũng là bản sửa lỗi cho tôi, hoạt động hoàn hảo với -W, ngay cả với -z -v, v.v.
Kurt Koller

Tôi có thể xác minh một trường hợp khác trong đó điều này là chính xác. Ubuntu 18.04 theo WSL vào năm 1809. Đây có lẽ nên là câu trả lời / giải pháp được chấp nhận.
Kurt Koller

Vấn đề này đánh tôi ngày hôm nay. Nó vẫn chưa được sửa.
Defcronyke

3

Tôi có cùng một vấn đề. Nó chỉ xảy ra trong khi rsyncing các tập tin lớn. Tôi đã đưa ra một cách giải quyết:

Khi một tập tin dừng chuyển, tôi hủy nó và sau đó rsync bất cứ tập tin nào dừng lại. Vì lý do nào, rsyncing các tập tin cá nhân luôn hoạt động. Tôi thường phải làm điều này cho một vài tệp trước khi rsync gốc đi qua.

Rất khó chịu, nhưng tôi không có bất kỳ giải pháp nào khác ngoài việc không sử dụng Ubuntu Bash trong Windows 10, điều này sẽ gây thất vọng.

Thiết lập của tôi: kết nối giữa Ubuntu chạy trong Windows 10 và máy chủ Ubuntu của Digitalocean.


Tôi đã từ bỏ rsync trong Windows Bash. Bây giờ tôi sử dụng unison để đồng bộ hóa các tệp và không còn bị treo nữa.
David Figatner

0

Hoàn toàn có thể thay đổi hành vi là do Windows Update và nó thay đổi quyền mặc định hoặc vô hiệu hóa một tính năng trong khi cập nhật và không bật lại đúng cách. Giải pháp của Microsoft cho các lỗi khác là vô hiệu hóa và kích hoạt lại WSL.

Nếu bạn chắc chắn rằng bạn đã không thay đổi bất cứ điều gì và nếu nó vẫn không hoạt động sau khi tắt và bật lại WSL từ "Tính năng Windows", bạn có thể muốn đăng nó dưới dạng lỗi / sự cố trên github của Microsoft, https: // github.com/Microsoft/BashOnWindows/issues

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.