web-dev-qa-db-ja.com

rsyncで破損したファイルのコピーを回避する方法

たくさんのファイルが入ったHDDを持っていますが、残念ながらその一部が破損しています。 goodファイルを新しいHDDにコピーしようとしています。私が使用しているもの:

rsync -azP SRC TGT

Rsyncが破損したファイルの1つに到達すると、コンソールに次のメッセージが表示されます。

rsync: read errors mapping XXX: Input/output error (5)

ターゲットフォルダには、開くことができず、手動で削除する必要がある破損したファイルがまだ表示されています。

i/oエラー後にファイルをコピーしないようにrsyncに指示するオプションはありますか?

3
Roberto Aloi

これはあなたの質問に答えなくても仕事をしますstopエラー時:

rsync -aP --partial-dir=/cygdrive/j/broken /cygdrive/g /cygdrive/j/gee

完全に読み取れないファイルはpartial-dirに残ります。 /cygdrive/jは新しいマウントポイントであり、/cygdrive/gは古い壊れたディスクのマウントポイントです。

3
Jarkko

そのエラーで強制的に停止させることはできないと思います。エラーをログに記録し、問題のあるファイルをクリーンアップして、rsyncを再度実行する必要があります。

Mike Bombichには、エラーを説明する優れたページがあります--- 「入力/出力」エラーとは何ですか。どのように解決できますか?

「これらのエラーは通常、メディアの損傷の結果です。ハードドライブの一部の「セクター」に障害が発生し、Mac OS Xはそれらからデータを読み取ることができなくなります。その場合、不良セクタを使用している1つまたは複数のファイルセクターを削除して、以前のバックアップから復元する必要があります。CCC.logファイルで呼び出されたファイルを削除すると、バックアップタスクを正常に実行できるようになります。」

彼はCarbonCopyClonerについて言及していますが、rsyncを使用してクローンの同期を管理しているため、ここでも同じことが当てはまります。

ちなみに、バージョンAppleが提供する(2.6.9)は古く、HFS +メタデータを適切に処理していません。最新バージョンは3.0.7で、すべてのメタデータをサポートしています。適切なバックアップのために。

Mikeは、新しいバージョンのコンパイル、インストール、および使用について説明しているページ( http://www.bombich.com/rsync.html )を持っています。彼がバックアップに適用するスイッチとオプションを必ず確認してください。

1
JasKerr