故障したハードドライブのデータを保存する必要があります。
〜のように聞こえるddrescueまたはmyrescue(または多分クロンジラ? )はここで親友になります。しかし、何がより速いのか疑問に思います。
- dd/ddrescue/myrescue/clonezillaを使用して、エラーが発生したドライブを同じ容量の新しいドライブに複製します。
- rsync/tar/cp を使用して失敗したドライブから新しいドライブにファイルを移動する
?
dd-ishはカーネル空間とユーザー空間の間でデータが前後に移動するのを防ぐことを選択しました。そうですか?しかし、rsyncなどは空の空間移動を避けますね。
dd-ishソリューションを使用すると、別の奇妙な祝福は次のとおりです。失敗したドライブは現在読み取り専用でマウントされているため(失敗プロセスの一部であると仮定)、途中でデータが変更されることを心配する必要はありません。やってます。
これはルートパーティションなので、完了したら新しいドライブを起動できる必要があるため、ddは便利です。
答え1
rsyncがより速くなるという疑いはありません。 ddは1.5TBの全体を読み書きする必要があり、すべての不良ブロックに到達して複数の読み取り再試行をトリガーするため、すでに長いプロセスの速度がさらに遅くなります。 rsyncは重要なブロックのみを読み込み、各不良ブロックが既存のファイルまたはディレクトリで発生する可能性が低いため、rsyncで発生する不良ブロックが少なくなります。
ディスクリカバリにrsyncを使用することの欠点は、不良ブロックが見つかった場合に不良ブロックを含むファイルまたはディレクトリを放棄することです。ディレクトリに多くのサブディレクトリが含まれていて、rsyncがそのディレクトリの読み取りを放棄している場合は、コピーに保存しようとしているコンテンツが不足している可能性があります。問題は、rsyncがファイルシステム構造に依存してコピーする内容を伝え、ファイルシステム自体はもはや信頼できないということです。
だから私は最初にrsyncを使ってドライブからファイルをコピーしましたが、私が見逃した内容を確認するために出力を非常に注意深く見ました。 rsyncがコピーできないことに耐えられない場合は、ddまたは他の低レベルブロックコピー方法のいずれかを使用してください。その後、コピーをfsckしてマウントした後、より多くのファイルを回復できることを確認できます。