rsync の大きなディレクトリ、宛先より大きい、停止して開始する必要がある

rsync の大きなディレクトリ、宛先より大きい、停止して開始する必要がある

4TB のストレージを備えた Ubuntu サーバーがあります。そのほとんどは 1 つのディレクトリで占められています。ディレクトリは約 1.5TB と聞いていたので、USB に 2TB ドライブを接続し、tmux で rsync -arW を実行してコピーしました。これで約 3.6TB であることがわかりました。USB ドライブは /dev/sdb1 にあります。その rsync で CTRL Z を押して、2TB ドライブを別のドライブに交換すると、再起動しますか? それとも、すでにそこにあるデータをたとえば 4TB ドライブにコピーし、それを sdb1 のエンクロージャに交換して再起動する必要がありますか?

答え1

この方法は機能しません。ただし、最初のディスクを接続したまま転送を停止し (またはディスクがいっぱいになったときに転送が終了するのを待つ)、別のドライブを接続してマウントし (最初のディスクを削除またはアンマウントせずに)、最初のディスクにコピーされなかったものを新しいディスクにコピーしないよう--compare-destにするオプションを使用できますrsync。たとえば、2 番目のコマンドは次のようになります。

rsync -aW --compare-dest=/path/to/original/mount /path/to/source /path/to/new/mount

manのページスニペット--compare-dest:

このオプションは、rsync に、転送を実行する際に宛先ファイルを比較するための追加階層として宛先マシンの DIR を使用するように指示します (宛先ディレクトリにファイルがない場合)。送信者のファイルと同一のファイルが DIR で見つかった場合、そのファイルは宛先ディレクトリに転送されません。これは、以前のバックアップから変更されたファイルのみのスパース バックアップを作成する場合に便利です。このオプションは通常、空の (または新しく作成された) ディレクトリにコピーするために使用されます。

DIR が相対パスの場合、宛先ディレクトリからの相対パスになります。--copy-dest および --link-dest も参照してください。

関連情報