私はサーバー用の新しいハードドライブを購入し、私のファイルを再構成しようとしています。最初の転送では、rsync
約3GBが完全にコピーされました。ただし、rsync
そのコマンドを使用すると、2番目の転送は失敗します。
$ sudo /usr/bin/nice -n 19 /usr/bin/ionice -c2 -n7 rsync -aEHAXPx /media/a/ /media/b --delete
...
rsync: [sender] write error: Broken pipe (32)
rsync error: error in socket IO (code 10) at io.c(820) [sender=3.1.1]
最初の実行では、800 GBのうち約550 GBをコピーして停止しました。最近の試みでは、1 GB のみのコピーに成功した後に失敗しました。関連性があるかどうかはわかりませんが、ソースは次のとおりです。時間をさかのぼるドライブに多数のハードリンクが含まれるように増分バックアップします。このエラーを修正してコマンドを完了するにはどうすればよいですか?
rsyncバージョン3.1.1プロトコルバージョン31を実行しています。
答え1
dmesg | grep rsync
[85852.560086] メモリ不足: プロセス 4242(rsync) スコア 194 終了またはサブプロセス犠牲
解決策:
- rsync速度をディスク速度よりも遅く変更してください。
--bwlimit=6000
.. USB 2は60MB/s /4(ドライブ2個の読み書き用)または/10(非SSD検索用)...または2GB RAMとUSB3.0を搭載したXU4を購入してください。 - カーネルメモリパラメータの変更
echo 100 > /proc/sys/vm/watermark_scale_factor
- 動作中の強制メモリの削除
echo 3 > /proc/sys/vm/drop_caches
- 4.9.29カーネルを使用していることを確認してください。
uname -r