web-dev-qa-db-ja.com

rsyncがいくつかのファイルを転送した後にハングする(Bash for WindowsからFreeBSDへ)

私はWindows 10 Pro PCから "Ubuntu on Ubuntu on Windows"を使用して、メディアライブラリをmy NAS(NAS4Freeを実行します)として機能するFreeBSDサーバーにバックアップします。私は自分の側で何も変更していないので、変更はWindows Updateの1つからのものだと思いますが、確かではありません。

いずれにせよ、ここで何が起こるかです。いくつかのファイルがコピーされた直後に、rsync転送がハングします。確認のために一晩実行しましたが、何時間もハングします。端末にCTRL + Cを送信して手動でタスクを強制終了すると、エラーメッセージが表示され、しばらく時間がかかり(約30秒)、プログラムが停止します。

arnaud@CLAVAIN:~$ rsync -arv --delete --no-compress /mnt/e/Music/ [email protected]:~/pool1/lolilol/music
[email protected]'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:~$

^ Cがどこにあるかがわかります。それは、killメッセージを送信するときです。これは、「エラー:原因不明のエラー」および「io timout」エラーが表示される場合です。

別のコマンドrsync -rltvzD --progress --deleteを試しましたが、同じエラーが発生します。

とにかく問題を理解するためにこれをよりよくトラブルシューティングできますか?ローカルドライブ(USB外付けドライブなど)でこれを実行すると、rsyncは正常に機能します。

11
Astaar

私も最近(昨日と同じように)この問題を抱えていて、私がわかったことは、デルタコピーなしでrsyncを実行すると(ファイル全体の転送に--whole-file/-Wを使用)、すべてが完全に機能することです。

私はそれが最善の解決策ではないことを知っていますが、パッチが適用されるまでの今のところ簡単な修正です。

15
George Yammine

私は同じ問題を抱えています。大きなファイルをrsyncしているときにのみ発生します。私は回避策を考え出しました:

ファイルの転送が停止したら、キャンセルしてから、停止したファイルをrsyncします。何らかの理由で、個々のファイルのrsyncは常に機能します。私は通常、元のrsyncが実行される前に、いくつかのファイルに対してこれを実行する必要があります。

非常に迷惑ですが、Windows 10でUbuntu Bashを使用しない以外に他の解決策はありません。

私のセットアップ:Windows 10で実行されているUbuntuとdigitaloceanのubuntuサーバー間のrsyncing。

3
David Figatner

動作の変更はWindows Updateによるもので、更新中にデフォルトのアクセス許可を変更したり、機能を無効にしたりして、再び正しくオンにならないことが考えられます。その他のエラーに対するマイクロソフトの解決策は、WSLを無効にしてから再度有効にすることです。

何も変更していないことが確かで、 "Windowsの機能"からWSLを無効にして再度有効にしても機能しない場合は、Microsoftのgithubにバグ/問題として投稿することをお勧めします https://github.com/Microsoft/BashOnWindows/issues

0
m_krsic