rsync をソフトに終了する

rsync をソフトに終了する

rsync可能な限りクリーンな方法で停止するように指示する方法はありますか? 2 つのオプション:

  • rsync現在のファイルの転送を停止し、一時ファイルを消去して終了するように指示します。
  • または、rsync現在のファイルの転送を終了して停止します。

そうすることでCtrl + C止まる転送中一時ファイルはそこに残りますよね?

編集

を使用している場合でも、--inplace最善の対応策は何でしょうか?rsyncを で使用し--inplaceていて、急いでいる場合、「このファイルで終了するか、今すぐ終了するが、破損したものが残らないようにコピーしていたこのファイルを消去する (削除されてもかまいません。後で再度バックアップできます)」などと指示するにはどうすればよいでしょうか。

答え1

rsync を kill すると、Ctrl+C転送の途中で停止しますが、オプションを指定して実行しない限り、一時ファイルはそこに保存されません--partial

rsyncを一時停止したい人のために、これを押すとCtrl+Zプログラムが一時停止します。実行または再開するとfgbgrsyncは完了しなかったファイルを繰り返し、残りのファイルのダウンロードを続けます。現在一時停止しているすべてのプログラムを表示するには、jobs

--inplace について

--inplace の問題は、データの更新時に新しいファイルを作成せず、既存のファイルに書き込むだけであることです。 --inplace で実行中に ctrl + c を押して既存のファイルを更新した場合、半分完成したファイルは削除されずに残ります。また、新しいファイルのみを同期し、既存のファイルを更新しない場合は、転送を中止すると (ctrl + c で)、削除されない半分完成したファイルが残ります。OS ファイルには --inplace をお勧めしません。頻繁に変更されるため、いくつかのことが本当に悪化する可能性があります。

関連情報