CentOs 6、大きなファイルの rsync/scp が 40% (2.4G) で停止する

CentOs 6、大きなファイルの rsync/scp が 40% (2.4G) で停止する

リモート サーバーからローカル ラップトップに大きなファイル (約 5G) をダウンロードしようとしていますが、ダウンロードはサイズの 40% (2.4G) で停止します。

私は次の rsync コマンドを使用しています:

rsync --bwlimit=1200 -rh --progress -e 'ssh -p port' server:/path/to/file Downloads/

また、サーバーの MTU を 1500 から 1492 に下げようとしましたが、成功しませんでした。

何か提案はありますか? :D

答え1

これはネットワークの問題ではないと思います。

メモリの問題である可能性の方がはるかに高いです。サーバーの RAM が 2GB しかなく、5G ファイルで RSYNC を実行している場合、まずサーバーを疑います。サーバーを実行しながら、うまくいけばサーバーのメモリを監視できます。

クライアント側にも問題がある可能性があります。たとえば、Windows 用の RSYNC は、RAM の容量に関係なく、大きなファイルでは常にクラッシュするため、使用を断念しました。

rsync がこのような大きなファイルを扱うのに適したツールであるかどうかは疑問です。もちろんファイルによって異なりますが、更新が rsync の diff エンジンに適合しない限り、おそらく意味がありません。直接転送する方がよいかもしれません。zip や tar などを使用してファイルを分割し、分割して送信し、相手側で再構成することもできます。

答え2

以下を試してください:

  • MTUを1492に下げる

sudo ifconfig eth0 mtu 1492

  • TCP SACKを無効にする

sudo sysctl -w net.ipv4.tcp_sack=0

関連情報