2011年5月21日土曜日

Windows7 無効になったダイナミックディスクを復旧する


このエントリーをはてなブックマークに追加


交換して放置してあったHDDを捨てようと思い、念のためディスクの中身を消去しようと考えた。

メインのWin7マシンのディスクを一本ぬいて、そこに処分するディスクを差しデータを消すことにする。

データの消去自体は問題なく終了。元々使っていたディスクを元に戻すと・・・


なんと認識されなくなってしまった。


一切の操作ができなくなり、唯一できそうなのは「ベーシックディスクに変換する」のみ。元々ダイナミックディスクで使っていたディスクなので、これで変換すればデータ読めるかも?と思い、選んでみると・・・


「ベーシックディスクに変換すると全てのデータが消えます。続行しますか?」


いや、ふざけんな。消えてもらっちゃ困る。何とかデータ復旧できないかとネットを探ってみると、すぐに出てきたのがdisk probe(dskprobe.exe) というツール。これはMicrsoft純正ツールのようでインストールメディアの SUPPORT\TOOLS というディレクトリに格納されているらしい。

さっそく、メディアの中を探ってみるが、SUPPORT\TOOLSの中には「gbunicnv.exe」謎の実行ファイルが一個あるのみで、dskprobe.exeは見当たらない。

検索しても見つかるのは、XPや2003の用のサポートツールに含まれるものだけで、これはダウンロードしてみたがインストーラーのチェックが引っかかりWin7にはインストール不可だった。

disk probe を使った復旧を解説しているページをよく読んでいくと、disk probe はパーティションテーブルを操作するツールみたいだ。


って事は、別にこのツールを使わなくてもMBRをダンプして、バイナリエディタで書き変えてから戻してやれば行けるんじゃないか?と思い、さっそくパーティションテーブルの情報について調べてみる。

その途中でMBRを書きかえるフリーのツールを発見。


それがこの Testdisk


調べてみると、かなり高機能でいろんなOSのパーティション・ファイルシステム構造をサポートしており、ウィザード形式で好きなパーティションレイアウトをMBRに書き込める。更にパーティションが見えない(ように見える)ディスクをスキャンし、解析したパーティション情報をMBRに書き込んでくれる機能もあるようだ。

こっち使った方が楽そうなので、さっそくこっちを使って復旧を試みてみる。

まずは起動。「管理者モード」で起動する必要があるので注意。
TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

  TestDisk is free software, and
comes with ABSOLUTELY NO WARRANTY.

Select a media (use Arrow keys, then press Enter):
>Disk /dev/sda - 500 GB / 465 GiB - Hitachi HTS545050B9A300
 Disk /dev/sdb - 500 GB / 465 GiB - Hitachi HTS545050B9A300
 Disk /dev/sdc - 2000 GB / 1863 GiB - WDC WD20EARS-00MVWB0
 Disk /dev/sdd - 2000 GB / 1863 GiB - WDC WD20EARS-00MVWB0
 Disk /dev/sde - 2000 GB / 1863 GiB - WDC WD20EARS-00MVWB0
 Disk /dev/sdf - 2000 GB / 1863 GiB - WDC WD20EARS-00MVWB0
 Drive C: - 2000 GB / 1862 GiB
 Drive D: - 2000 GB / 1863 GiB



>[Proceed ]  [  Quit  ]
ここで操作したいディスクを選ぶ。今回は「/dev/sdb」を選択。


使っていたアーキテクチャを聞かれるので「Intel」を選択する。
Note: Disk capacity must be correctly detected for a successful recovery.
If a disk listed above has incorrect size, check HD jumper settings, BIOS
detection, and install the latest OS patches and disk drivers.


TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org


Disk /dev/sdb - 500 GB / 465 GiB - Hitachi HTS545050B9A300

Please select the partition table type, press Enter when done.
>[Intel  ] Intel/PC partition
 [EFI GPT] EFI GPT partition map (Mac i386, some x86_64...)
 [Humax  ] Humax partition table
 [Mac    ] Apple partition map
 [None   ] Non partitioned media
 [Sun    ] Sun Solaris partition
 [XBox   ] XBox partition
 [Return ] Return to disk selection



既にパーティション情報が見えているので、「Quick Search」を選択してより詳細な情報を取得する。
Note: Do NOT select 'None' for media with only a single partition. It's very
rare for a drive to be 'Non-partitioned'.



TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 500 GB / 465 GiB - CHS 969021 16 63
Current partition structure:
     Partition                  Start        End    Size in sectors

 1 P W2K Dynamic/SFS          0   1  1 969018  15 31  976771057
No partition is bootable












*=Primary bootable  P=Primary  L=Logical  E=Extended  D=Deleted
>[Quick Search]  [ Backup ]
                            Try to locate partition




ここはWin7で作ったパーティションなので、「Y」を選択
TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Should TestDisk search for partition created under Vista or later ? [Y/N]
(answer Yes if unsure)



検索で見つかったパーティションが表示されるので、設定したいパーティション情報を書き込む。とりあえず今回は認識されたままを使った。
TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 500 GB / 465 GiB - CHS 969021 16 63
     Partition               Start        End    Size in sectors
>* HPFS - NTFS              2   0 33 969016  14 14  976766976












Structure: Ok.  Use Up/Down Arrow keys to select partition.
Use Left/Right Arrow keys to CHANGE partition characteristics:
*=Primary bootable  P=Primary  L=Logical  E=Extended  D=Deleted
Keys A: add partition, L: load backup, T: change type, P: list files,
     Enter: to continue
NTFS, 500 GB / 465 GiB



「Write」を選択するとパーティション情報が書きかえられる。
TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdb - 500 GB / 465 GiB - CHS 969021 16 63

     Partition                  Start        End    Size in sectors

 1 * HPFS - NTFS              2   0 33 969016  14 14  976766976














 [  Quit  ] >[Deeper Search]  [ Write  ]
                          Try to find more partitions




これで終了。再起動しろと言ってくるが、「ディスクの管理」→「再スキャン」で認識できる。
TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER 
http://www.cgsecurity.org

Write partition table, confirm ? (Y/N)





TestDisk 6.13-WIP, Data Recovery Utility, May 2011
Christophe GRENIER 
http://www.cgsecurity.org


You will have to reboot for the change to take effect.


無事認識。



しかし、別ツールを使わないと復旧できないOS標準のソフトウェアRAIDって恐ろしいなと実感。これRAID5とかだと個人レベルでは間違いなく復旧無理だと思う。Winのダイナミックディスクは使うにしてもRAID1までにしておいた方がよさそう。

そのRAID1もディスク負荷が上がってくると、ディスクの同期に失敗して勝手に再同期が走り出す代物なのでお勧めはできない。。。

0 件のコメント:

コメントを投稿