壊れたHDD復旧プロジェクトX

パーティションが壊れていた
IOエラーと表示された
もう,不可能だと思った
だが,あきらめない男がいた

ネタっぽく書くのは難しい.

壊れたHDDって,何がどうこわれてたのかわからないけど,別のPCにつないでみても認識されたりされなかったりで物理的にあやしげだった.認識されても,パーティション情報が壊れているらしく,サイズが明らかにおかしかった.

gpart や testdisk というツールがあって,パーティションテーブルが壊れてもそれらしい情報を探してくれるらしいが,今回は使えなかった.困った.破壊されすぎ? 運が良かったのは,同じ機種がもう1台あったこと.そのパーティション情報をメモって1CD Linuxのfdiskで書き込む.よし,これでWindowsから見えるように・・・ならなかった.なぜに..

物理破壊ならどんどん壊れていくに違いない,ということで,とりあえずイメージをバイナリファイルにしておくことに.Cygwinのdd.Windowsでもddできるなんて,すばらしい.読めないセクタは飛ばしてもらわないと困るし,慎重に行きたいので,bs=512 conv=noerror,sync をつける.かなり時間がかかって終了.

とりあえず昔作ったJPEGっぽいところを抜き出すツールを使ってみる.ウィルス検出!!会社のパソコンはすぐに管理者に情報がいってしまう.ちゃんとWindowsUpdateしてますか?ってメールがきてしまった.どうかんがえても誤検出だと思うんだけれども...結局これで取り出せたのはブラウザのキャッシュっぽいのと,デジカメ画像1枚だけだった.残念.

続きましてThe Sleuth Kit.fls -r でファイルの情報を全取得して,判明したinode番号?をicatに指定すればファイルを取り出せる.すごい.すばらしいツールだ.Windows版もあって日本語ファイル名も問題なし.リストからicatを実行するバッチファイルを作るスクリプトを書いて一気に処理.めでたく重要ファイルを取り出せた.ありがとう.

あきらめずに取り組むって良いことだねぇ.これでも無理なときは,最終手段としてmagicrescueというのがあるらしい.自分がJPEGっぽいところを取り出してみたのと同じように,いろんなファイルに対応しているんだとか.けど,フラグメントがすすんでると無理なんだろうな.

後になって,似たような状況の人が,パーティションテーブルを作り直せばFreeBSDではmount_ntfsでマウントできたという話を見つけた.できてたらもうちょっと楽だったかも.