USB ドライブに ISO を保存しようとしたときに、誤ってdd
HDD ( ) を使用しました。調べてみたところ、データが上書きされた場合は困ったことになると読みました.../dev/sdc
データを回復する方法はありますか? 何かできることはありますか?
答え1
Data Destroyer はハード ドライブのセクターを上書きします。上書きされたセクターを復元する方法はありません。Linux がセクター間でファイルを分散する方法 (ext パーティションをデフラグする必要がないのはこのためです) のため、ほとんどのファイルのコンテンツがすべて残っている可能性は低いです。バックアップから復元します。バックアップは作成しましたか? 作成していない場合は、作成する理由がわかりました。申し訳ありません。
答え2
データの一部または大部分がまだ残っている場合にのみ、データを保存できます。
以下は簡単なブルートフォースライブテストです(PV 動画そしてイゾップ)を見て、どこまで(そしてどれだけ)dd得た:
hd=/dev/sdc # change to whatever device or partition needs testing.
pv -EcN raw ${hd} | lzop | pv -cN compressed | wc -c
消去されていない160GBのハードドライブでdd1 分後、テストは次のようになります。
raw: 5.12GiB 0:01:11 [46.1MiB/s] [==> ] 3% ETA 0:33:15
compressed: 4.81GiB 0:01:11 [45.9MiB/s] [ <=> ]
注目してほしいのは、圧縮された数字はかなり近い生数字。作業が完了したときにその通りであれば、ほとんどのデータはまだ残っています。割合は、トラブルが発生する前にハードドライブがどれだけいっぱいだったかによって異なります。つまり、HDDまたはパーティションが10%しかいっぱいでなかった場合、8%がイゾップ正常です。また、HDDにどのようなデータが保存されているかにもよりますが、幸いにもイゾップ弱いコンプレッサーですが、ここでは大いに役立ちます。
すべてゼロで試してみましょう:
hd=/dev/zero # change to whatever device or partition needs testing.
pv -cN raw ${hd} | lzop | pv -cN compressed | wc -c
...8秒後には次のように表示されます:
raw: 6.81GiB 0:00:08 [ 891MiB/s] [ <=> ]
compressed: 31.8MiB 0:00:08 [4.06MiB/s] [ <=> ]
の圧縮されたサイズは現在1%未満です生ハードドライブ全体がこのような状態であれば、データは壊れた。
(注:大きなハードドライブの読み取りには時間がかかるので、この方法はサンプリングによって改善されます。すべてのブロックを読み取る代わりに、dd読むんブロック、先へスキップ10nブロックを生成し、それを生上記に入力してください。