web-dev-qa-db-ja.com

ピアによってRsync接続がリセットされました

rsync --protocol=29 -rav -e ssh --include '*/' --include='*_en*.xml.gz' --exclude='*' user@server:/path/

コンテンツがリモートサーバーからダウンロードされていますが、しばらくするとこのエラーが発生します。

Write failed: Connection reset by peer
rsync: connection unexpectedly closed (39027627 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [receiver=3.0.9]
rsync: connection unexpectedly closed (149869 bytes received so far) [generator]
rsync error: unexplained error (code 255) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [generator=3.0.9]

なぜこれが起こるのか?

3
To Kra

ネットワーク接続が切断されています。ローカルマシンとリモートマシンの間のネットワークデバイスである可能性があります。たとえば、一部の過負荷のファイアウォールは、接続をややランダムにドロップする傾向があります。これを診断するには、ネットワークトポロジに関する十分な知識が必要です。

基になるTCP接続が切断された場合、Rsync接続はほとんど簡単に再開できます。もう一度実行してください。実行ごとに少なくとも1つの完全なファイルを転送する時間があれば、ジョブは最終的に完了します。 。

一般に、信頼性の高い接続を信頼性の高い接続に構築できますTCP接続は、信頼性の低い接続の上に構築できますが、ターンキーソリューションについては知りません。VPNソフトウェアによっては、これでうまく機能する場合があります。- Rocks は、これを正確に行うための、メンテナンスされていない古いツールです。

最も*堅牢な*リモートファイルコピー? および Automatically-reconnecting TCP tunnel も参照してください。

最近、cygwinの下でrsync 3.1.1(および3.0.9)を使用し、リモートのLinuxマシン(rsync 3.1.0)からプルするのと同じ問題がありました。私の場合、ソースパスのスペースに関連していることがわかりました。解決策は、パスを二重引用符で囲み、次にこれを単一引用符で囲みます。

$ rsync [email protected]:'"Documents/016054 signed agreement.pdf"' $TEMP/file.pdf

単一のおよび/またはを省略すると、二重引用符でエラーが発生します。引用符はユーザー/マシンではなく、ディレクトリ/ファイルを囲んでいることに注意してください。

1
gogoud

ネットワークの問題とrsyncプロトコルの問題以外に、一度に多くのファイルを同期しようとして、メモリ不足になる場合もあります。

あなたはあなたの環境について何も書いていないので、私は推測します。しかし、OpenVZコンテナーとの間で多くのファイルをrsyncし、突然PRIVVMPAGESが不足すると、同様の問題が発生します。

メモリに関連しているかどうかを確認するには、1つの大きなファイルをrsyncしてみます。

0
Tomasz Klim