データ復旧大作戦

クロアチア戦のショックより、コッチの方がショックです.


Windows 2000 のハードディスクが壊れました.
BIOSからは認識していますが、システムが立ち上がりません.
DriveCopy PLUS をつかった、ディスクコピーも出来ない状態です.


こわれたハードディスクのサイズは40GB
フォーマットはNTFSで、パーティションは1つです.


そんなわけで、念願(?)の復旧作業にはいります.
参考にしたのは、有名なこちら.


現在 dd で、ディスクイメージの吸い出し中.(本日12:00過ぎよりスタート)
あと何時間かかるのかしら.


手順は、以下の通り

PC と HDD を準備

    • 接続は以下の通り
      • Primary Master : 80GB FreeBSD & imgファイル置き場
      • Primary Slave : なし
      • Secondary Master : 40GB こわれた HDD or 80GB あたらしい HDD
      • Secondary Slave : なし

FreeBSD を準備

    • FreeBSD-6.1R を Primary Master に、最小インストール
    • 作成する HDD イメージより大きい BSD パテーションを作る
      • Disklabelエディタから auto で、/usr が、そうなるのでそのままインストール

BIOS から認識されないディスクのケツを叩く

    • BIOS からは認識されていたので本当は不要
# atacontrol detach ata1
# atacontrol attach ata1

ATA バスを PIO モードに設定する

    • でも、なぜか PIO0 にならないで PIO4 にしか設定されなかった
# atacontrol mode ad2 PIO0
    • ちなみに、あとで確認したら ata0バスはDMA66相当だったけども ata1バスはDMA33相当だぞ.オイ.なんていいやがるので、IDEケーブルを交換してみた.

HDD の情報を確認

# atacontrol cap ad2

fdisk を確認する

# fdisk ad2
    • でもやっぱり読めず

dd で HDD イメージを抽出

# cd /usr
# dd if=/dev/ad2 of=broken.img ibs=512 obs=65536 count=78165360 conv=sync,noerror
    • 77545 * 16 * 63 = 78165360
    • (78165360 * 512) / (1024 * 1024) = 38,166 MB なのでたぶん合っている
    • 相当なエラーがでる.そのたびにタイムアウトを待つので、時間がかなり掛かる
      • こんな感じの Error がたっぷり大盛り
ad1: FAILURE - WRITE status=51 error=<...> LBA=...
    • 結局、6/19 12:00〜24:00 なので、12時間かかった.相当エラーが出ていたので、時間がかかってしまった.後の方のsectorは、ほとんどエラー

dd で HDD イメージを新しい HDD に貼る

    • 一度 shutdown してから、/dev/ad2 として、新しい HDD を接続する
    • 下記のように、HDDイメージを新しい HDD に貼り付ける
# cd /usr
# dd if=broken.img of=/dev/ad2 bs=65536
    • 6/20 9:00〜9:30 で、30分くらいで終わった.速い早い

ddコマンドで HDD の完全消去

20GBのディスクイメージを40GBのHDDに貼り付けたりしたあとに、ディスクが20GBとしてしか認識されなくなる.それを解決するためには

# dd if=/dev/zero bs=65536 count=1 of=/dev/ad2

とかやって、fdisk パーティションテーブルをすっ飛ばす.荒っぽい.


コピー用のHDDを用意する際に、中古のHDDを使う際には、HDDの完全消去を実行しておきたい.

# dd if=/dev/zero bs=65536 of=/dev/ad2

NTFS の修復を行う

    • Win マシンにて修復する
    • ファイナルデータを使用する
    • HDD イメージを貼り付けた HDD を USB の外付け HDD ケースを使って、Win マシンに接続する
    • でも相当壊れているようなので、どの程度、復旧出来るかは、見当が付かない.
      • と、思ったけども
      • すげぇー時間が掛かった.10:00〜15:00すぎくらい.5時間くらい.
      • モウダメダと思ったけども、20GBくらいのデータの修復が出来た
      • ディレクトリ構造についてのデータは、ほとんど破壊されていた模様
      • ファイナルデータだと、普通に修復出来たファイルと、ファイル名もわからないけども修復出来たファイルという風に2種類のデータが修復される
      • 肝心のメールデータ(Edmax)はなんとか修復出来た

修復出来たファイルを復元

    • 2.5インチの外付けHDDに復元
    • コピーに20分ほど

別の予備PCをセットアップして担当者に渡す

    • 明日の午前中の予定
    • そうなんです.このPCは、べつにオイラのではありません

ありがとう

ひとまず言えることは dd と ファイナルデータ に足を向けて眠れないということ.
あと先人たちの智恵に感謝.
ほんとうに、素晴らしい.素晴らしすぎ.
HDDが回っている間は、あきらめたらダメです.


たとえ相手がブラジルでも、最後まで勝ち点3をとりにいかないとダメです.


今度は dd_rescue を試してみたいです.ウソ.もう二度としたくありません.
バックアップとれよ.みんな.

関連するかも