web-dev-qa-db-ja.com

rsyncを一時停止/再開するにはどうすればよいですか

実行中のrsyncを一時停止するにはどうすればよいですか?

初めてやった Ctrl+C それを殺し、-Pフラグを再度実行します。これは現在のファイル転送を破壊する傾向がありますか?

2回目は、MacOSをスリープ状態にする(蓋を閉じる)だけです。実行中のプロセスを見ると、ステータスが「S」の2(理由は不明)がわかります。

使用してみました

kill -SIGCONT

プロセスを再開しますが、効果はありません。

52
qnoid

TSTP(ポライト)またはSTOP(強制)シグナルを送信して、プログラムを一時停止できます。 rsyncを実行したターミナルで、 Ctrl+Z TSTPを送信します。ターミナルでfgまたはbgコマンドを使用するか、CONTシグナルを使用して再開します。

Rsyncプロセスを強制終了して、すべてをもう一度実行しても安全です。中断したところから続行されます。特に--partial-Pに含まれる)を渡していない場合、rsyncはすべてのファイルを再度チェックし、中断されたファイルを処理するため、少し非効率的です。スクラッチ。

一部のファイルが適切に同期されない可能性のあるオプションの異常な組み合わせが存在する可能性があります。おそらく--inplaceが他のものと同期していますが、単一のオプションではこれが発生しないと思います。

ラップトップを取り外して別の場所に再接続すると、別のIPアドレスが取得される可能性があります。次に、TCP接続が切断されるため、それを終了してから再起動する必要があります。これは、ラップトップをサスペンドしてTCP接続がタイムアウトしました。タイムアウトにより、最終的にアプリケーションレベルまでフィルターで除外されますが、しばらく時間がかかる場合があります。 Ctrl+C もう一度rsyncを実行します。

Ctrl+Z 一時停止する、そして:

$ fg

続行するには、

$ jobs

中断されたジョブを確認する。 bg [number]それらを背景に。 fg [number]フォアグラウンドに。

22
gauteh

--partialフラグを指定してrsyncを実行します。部分的な転送を保持し、起動時に部分的なファイルを再開します。

8
bahamat

ここの人々は--partialフラグの使用が機能することを述べましたが、再開時に--appendまたは--append-verifyフラグが使用された場合にのみ再開することを言及する必要があります。

--partialは、同期プロセスが完了していないファイルの隠しファイルを作成します。同期を中断してもファイルは保持されます。再開後、--appendを使用するとファイルの完成が続行されます。それ以外の場合、--appendを使用しないと、不完全な隠しファイルが保持され、不完全なままになります。

結論:rsync --partialを使用して中断することができます Ctrl + C 再開時にrsync --appendを使用した場合

(出典: 中断後にrsyncを再開できますか? 2016年4月5日取得)

5
Mehdi Nellen