ファイルシステムがいっぱいになり、5GB cp 操作が失敗します。ファイルシステムのサイズ変更後、rsyncを使用して単一のファイルコピーを復元しようとしました。
$ rsync --progress /source/bigfile ./bigfile
しかし、奇妙なことに、ファイルがすでにそこにあることに気づかず、最初から始めているようです。しかし、ファイルをどこに保存するのか教えてくれません。
大きなファイルを別の場所に移動してrsyncを再起動すると、ファイルは表示されません!
$ mv bigfile bigfile-away
$ rsync --progress /source/bigfile ./
rsyncが再コピーされているようですが、ファイルが表示されるのを見ることはできません。
これは変です!
答え1
同じシステムの2つの部分間でコピーしています(または少なくともそうですrsync
)。これにより、ほとんどの最適化機能が無効にrsync
なり、再びcp
。
できれば保証するファイルに変更はなく、そのまま使用できます--append
。中断可能なコピーの場合は望むかもしれません。--partial
--times
()を使用してファイルのタイムスタンプを保存できます。-t
これは使用したいと思われます--inplace
(フラグはこれを意味します--append
)。
rsync -tvP --append /source/bigfile ./bigfile
ファイルをコピーすると、通常は一時rsync
ファイル名に書き込まれ、すぐに正しいファイル名に移動されます。ファイル名はドットで始まるので、次のように分類されます。隠された;で見ることができますls -A
。また、--partial
(partial)フラグがないと、-P
不完全なファイルがターゲットから削除されます。