破損したファイルシステムを別のハードドライブ上のファイルにイメージ化する前に、読み取り不可能なデータの量を確認するために、ddrescue
(レスキューされた出力を/dev/null
にスロー)をドライランすることにしました。
# ddrescue -d -b 4096 -r 3 -f /dev/sda1 /dev/null sda1.log
結局、完了するのに3日かかりました。これで実際の画像を作成する準備ができましたが、完成するまでさらに3日間待ちたくありません。しかし、幸いなことに、私はログファイルを持っているので、ddrescue
に良いセクターだけを救出し、悪いセクターには触れないように強制することは可能ですか?
いくつかのドキュメントを読んで、私は次のアイデアを思いつきました:
# ddrescue -d -b 4096 --fill=+ /dev/sda1 /mnt/sda1.img sda1.log
これは機能しますか?良いセクターだけを読み直す別の(好ましい)方法はありますか?
数年前から、ハードドライブの救助にddrescue
を使用することがあります。
表面が本当に壊れているhddではdd
よりも速いもの。
しかし、dd
は本当に安全で、私の最初の投稿は真実のままです。
これは非常に悪い考え!
私が話しているのは破損したファイルシステムを別のハードドライブ上のファイルにイメージングする前に...
ディスクドライブが破損するようになると、一般的に破損が拡大しますドライブにアクセスしようとするたびに。
したがって、the壊れたドライブを救済する良い方法は1回の中断のない操作でディスク全体を最初から最後までコピーしてイメージを作成することです!。その後:ディスクドライブのプラグを抜き、静かに保管します。として:壊れたドライブに触れることが少ないほど、何かを復元しなければならない可能性が高くなります。
壊れた材料への機械的なアクセスがさらに損傷を与える可能性があるため、最後の操作から得られたログ参照ではありませんブロックが損傷していることを知るため now。
個人的には、ddrescue
は使用しないでください。私はしばらくの間dd
を使用し、このツールは私が必要とするすべてを作ります:
dd bs=512 if=/dev/sdX of=/backuprepo/sdXBroken.img conv=noerror,sync
そして、私はそれを辛抱強く働かせました。
Ddrecueが何をするかを知っているので、壊れたディスクからデータを回復するときに/ dev/nullに書き込むために使用するのではなく、実際のイメージファイルへの書き込みを使用して「少なくとも何か」を取得する必要があります。
/ dev/nullへの書き込みには意味があります。新品のディスクをストアに返品するかどうかを知りたい場合。
この場合、「/ dev/nullattempt」のログファイルを使用せず、空の/新しいログファイルを使用し、その方法に応じて、最終的に数回のパスを試行します...