ロゴ
総アクセス数:

現在の閲覧者数:

パソコンの部屋

その9 奇跡の生還

2008.11.08
更新 2010.10.04

ハードディスク全体を誤ってフォーマットして
パーティションが消えてしまったら
慌てずに まず情報収集をする

 眠れなかった。
 体が持たないと思って横になっても、3~4時間で目が覚めてしまい、気が付けばパソコンに向かって、検索サイトにキーワードを入力していた。
 とにかくそれによって、このような体験をしたのは自分一人だけじゃないということがわかっただけでも良かった。
 すると、問題を解決する糸口が見えて来た。

Google1

情報を分析する

 キーワードを何通りも変えて、検索してみた。
「パーティション 削除 修復」
「フォーマット ファイル 救出」
 等等。
 その結果、大きく分けて2通りの場合があり、それによって修復の方法が異なるることがわかってきた。

  1. ハードディスクが物理的に損傷してしまった場合。専門の業者にハードディスクを預けて、その中のデータの救出を依頼することになる。中には、数十万円も請求されたという例があったが、本当にそんなに掛かるのだろうか? 業者は慎重に選んだ方が良さそうだ。
  2. ハードディスクそのものは損傷しておらず、パーティションを誤って「削除」したり「フォーマット」してしまった場合。その上に別のデータを上書きしていなければ、有償または無償のソフトで修復が可能である。

 今回の私の場合は、2.に該当している。

条件に応じたソフトを選ぶ

これに使用したマシンの主なスペック
CPUIntel Celeron 550, 2GHz
System Memory1526MB DDR2
Hard Disc80GB
光学ドライブスーパーマルチDVD±RW(DL対応)
LCD Monitor15.4型 Ultrabright
Network/Modem10/100 Mbps Ethernet LAN
802.11b/g Wiless LAN
56K ITU V.92対応FAX Modem
Medium ManagerxDピクチャーカード、SDメモリーカード
メモリースティック、メモリースティックPro
マルチメディアカード対応
PortUSBx4, VGAx1
Oprating SystemWindows XP Home Edition

 それでは、それを修復するためのソフトは、どう選べばいいのか。
 今度は、
「パーティション 修復 ソフト」
「フォーマット ファイル 救出 ソフト」
 などのキーワードで検索した結果、有償から無償まで、いろいろなソフトがあることがわかってきた。その中でも用途に応じて、いくつかの種類に分かれていることもわかった。

  1. 「ゴミ箱」から削除してしまったファイルを復活させる。
  2. 削除してしまったパーティションを復活させる。
  3. フォーマットしてしまったり、パーティションテーブルを書き換えてしまったディスクから、消えてしまったファイルを救出する。
  4. フォーマットしてしまったり、パーティションテーブルを書き換えてしまったディスクから、元のパーティションをリカバリする。

 有償のものを一つ一つ試してみるのは大変なので、私は無償のものか、有償のトライアル版を試してみることとなった。
 まず最初に試してみたのがこれだ。

TestDisk

 「TestDisk」は、パーティションテーブルが損傷したり書き換えられたりしたディスクから、パーティションをリカバリするための無償のソフトだ。英語だし、ハードディスクに関する専門的な知識をある程度必要としているが、過去に作られた全てのパーティションを可能な限り検出して表示し、可能ならばそれを修復することが出来るという優れものだ。
TestDisk 公式ページ
 ここから、現時点での最新版である、バージョン6.10の Windows 用ファイルをダウンロードして、それを USB メモリにインストールした。ハードディスクにインストールすると、まだ救出可能なファイルが、それによって上書きされてしまい、救出不可能になってしまうので気を付けよう。
 その「testdisk_win.exe」を早速実行してみる。
 testdisk_win.exe を実行すると、このようなウインドウが現れる。
TestDisk1
 「Create」を選択して「Enter」キーを押す。(以下、「Enter」キーを押すは省略する。)
 すると、コンピュータに接続されていて認識されている全てのドライブが表示される。
TestDisk2
 修復したいドライブを選択して、「Proceed」を選択する。
TestDisk3
 Windows が動くパソコンなら「Intel」でいいはずなので、それを選択する。
TestDisk4
 これは、通常なら現れないメッセージだ。
 Linux の「fdisk」でも指摘されることだが、このディスクの場合、シリンダとヘッドの数値の割り合いが、なぜか通常とは違っている。Windows XP をリカバリしてからこうなった。
 「Continue」しかないので、それを選択する。
TestDisk5
 「Analyze」つまり「解析」を選択する。
TestDisk6
 「Quick Search」を選択する。
TestDisk7
 Vista で作ったパーティションではないので、「N」キーを押す。
TestDisk8
 「Enter」を押す。
TestDisk9
 ディスク全体がフォーマットされてしまうと、「Quick Search」では、このように何も見付からない。
 「Done」を選択する。
TestDisk10
 今度は、より深い検索を行うために「Deeper Search」を選択する。
TestDisk11
 「Deeper Search」が始まったところ。80GBのディスクだと、これには数十分かかった。中止するには「Stop」が選択された状態で「Enter」キーを押す。
TestDisk12
 「Deeper Search」が終わったところ。
 この、白く選択されている失われたパーティションに、私の大切なデータが入っているのだ!
 しかし私は、ここで気が付いた。
『待てよ。この変則シリンダとヘッドのままで、このパーティションを復活させるということは、これからもずっとこの状態のままでだってことか?』
 私は、数字にはいい加減な方で、自家用の料理なら、いつも目分量で計測している。しかし、ことコンピュータのこととなると話しは別だ。緻密な数字の組み合わせによって成り立っている、そのどこかが狂うと、パフォーマンスの低下や思わぬトラブルにつながってくる。特に、このようなレベルでそれが狂っていると、高レベルの部分を含めたシステム全体が狂ってくるのではないかと疑ってしまうのだ。
 そのため、まずはデータの安全を完全に確保しておいてから、シリンダやヘッドなどの、いわゆる「ジオメトリ」というものを変更しなければならないと思い、もっと別のソフトを試してみることにした私は、この素晴らしいソフトを作った人に敬意を表しながら、この作業を中断した。
 このソフトがこの後どうなるのかを知りたい人は、例えば「TestDisk」でぐぐると、初心者にもわかり易いように、その使い方の全貌を日本語で詳しく解説してあるページが上位に現れると思うので、そちらを参考にしてほしい。

PhotoRec

 上記のソフトと同じ製作者による「PhotoRec」も、やはりフリーソフトだが、削除やフォーマットなどで消えてしまった一つ一つのファイルを、ディスクの中から救出するという優れものだ。検出することの出来るファイル拡張子は限定されているが、テキストドキュメントから画像、マルチメディアや実行ファイルまで、広範囲をサポートしている。
 testdisk_win.exe と同じフォルダの中に、photorec_win.exe があるはずなので、それを実行すると、このようなウインドウが現れる。
PhotoRec1
 「Proceed」を選択すると、「TestDisk」と同じように進行して行く。
 このように、必要とするファイルを選択して絞り込むことも出来る。
PhotoRec2
 救出されたファイルは、フォルダごとに名前が付与されて保存される。その結果を Windows で見たところ。
PhotoRec3
 しかし、これらの名前を付け直すのは大変な作業だ。
 私は、パーティションを丸ごと GUI 環境で復活させることの出来るソフトを探した。

O&O Format Recovery 4

 そこで出会ったのが、この「O&O Format Recovery 4」だ。
 誤ってフォーマットしてしまったディスクから、ファイルやフォルダをリカバリすることが出来るそうだ。
 O&O ソフトウエアのページ
 その体験版をダウンロードして試してみる。
 ダウンロードしたファイルを実行すると次のようなインストーラーが現れる。
OO0
 その指示に従ってインストールを終えて、プログラムを実行すると次のようなウインドウが現れる。
OO1
 「Continue Testing...」を選択して「次へ」をクリックすると、体験版使用のための手続きがある。それを終えると、次のようなこのソフトの説明になる。
OO2
 「次へ」をクリックする。
OO3
 ディスクを検出したところだ。それを展開すると、その中のパーティションが次のように表示される。
OO4
 この中から修復したいパーティションを選択して、「Analyze Drive」ボタンをクリックする。
OO5
 「Recovery Empty Folders」にチェックを入れておくと、データの入っていない空のフォルダも復元する。
 「Recovery Empty Files」にチェックを入れておくと、データの入っていない空のファイルも復元する。
 「Recovery System and Hidden Files as They Are」にチェックを入れておくと、システムファイルや隠しファイルも復元される。
 必要な項目の選択を終えたら、「次へ」をクリックする。
OO6
 「Ignore Drive Errors」にチェックを入れておくと、ドライブのエラーを無視する。
 その下にチェックを入れておくと、検出されたファイルを自動的に保存する。それで「次へ」をクリックすると、その保存先を尋ねられる。
OO7
 リカバリしたファイルの保存先を指定する。リカバリするファイルが入っているディスクにして、それが上書きされてしまうと、もう2度とそれをリカバリすることが出来なくなるので、別のハードディスクか、USB メモリとか、とにかく別のドライブの中にすること。
 「次へ」をクリックするとスキャンが始まる。
OO8
 スキャンしているところ。
OO9
 結果表示。現在の「C:」の中から5つの古いパーティションが発見された。一番下のものが、以前「C:」として使っていた領域だ。これを選択して「次へ」をクリックすると、そのスキャンが始まる。
OO10
OO11
 スキャンしているところ。14% までは、パーティションが0で、たった9個のフォルダとファイルしか見付っていない。これは、この部分がほぼ修復不可能だということを意味している。ところが、27% までには「Found Partition」が「1(NTFS)」と表示され、フォルダとファイルが41126個も見付かっている。これは、この部分が再生可能だということを示している。
 スキャンが終わってその結果を見ると、フォルダやファイル名がディレクトリ構造と共に表示されたではないか!!
そうだ! こういうソフトが欲しかったんだ!!!
 ところが、体験版ではここから先に進めない。まるで、行方不明になっていた恋人とようやく巡り合えたが、ガラスの壁に隔てられていて触れることが出来ないような歯がゆさだ。でも仕方ない。有償ソフトの体験版というものは、このように多少残酷でなければ意味がないのだ。
 フリーでこのようなソフトが無いものかと、私はネット上を探し回った。

Partition Find and Mount

 そこでようやくたどり着いたのが、「Partition Find and Mount v.2.31」だ。
 「Partition Find and Mount」は、フォーマットしてしまったりして失われたパーティションをリカバリするためのフリーソフトだ。シンプルで初心者にもわかり易い作りになっているが、重要なポイントはきちんと押さえてあるという素晴らしいソフトだ。
Partition Find and Mount 公式ページ
 そのダウンロードのページから、Windows 用の「fnmsetup.exe」をダウンロードする。
 デスクトップ上でそれを実行して、やはり USB メモリの中にインストールした。
 早速その「FindAndMount.exe」を実行してみると、このようなウインドウが現れた。
fnm1
 検査したいディスクを選択して、「Scan...」をクリックする。
fnm2
 このようなポップアップウインドウが現れる。一番上が「お勧め」と書いてあるので、それを選択して「Scan」ボタンをクリックするとスキャンが始まる。
 もしこれで何も検出されなければ、次に「Nomal Scan」を試してみる。今回の私のように、パーティションがフォーマットによって消えてしまった場合は、これ以降でないと検出することが出来ないようだ。
fnm3
 スキャンが完了するとこのようなメッセージがあるので、「Close」ボタンをクリックする。
fnm4
 スキャンの結果表示。
 「Visible partition」は、現在のパーティション。
 「Found partition」は、過去のパーティションだ。緑でそのディスク上の大体の位置を示している。その中の「Partition4」には「My Document」として、私の大事なデータを保存してあったので、今度はこれを選択して「Mount As...」をクリックすると、マウント先を尋ねてくる。
fnm6
 選択可能なドライブが表示されるので、任意のドライブを選択して、「Open volume in Windows Explorer」にチェックを入れて「OK」ボタンをクリックすると...
fnm7
 ジャーーーン!!!
 なんと、消失する以前のままに、それが表示されたではないか!
 や、やったぞーーー!!!
 試しにフォルダを開いてファイルにアクセスしても、ちゃんと開くことが出来る!
 ーーーっ!!!
 しかし、喜ぶのはまだ早い。これは実体の無い仮のパーティションであり、パソコンを再起動させると、再び消失してしまうということがわかった。必要なフォルダやファイルを実体のあるパーティションにコピーしてこそ、初めてそれが救出されるのだ。そのコピー先は、間違ってもこのディスクにしてはならない。なぜなら、救出すべきファイルにそれが上書きされてしまうと、もうそれは救いようが無くなってしまうからだ。
 またもや「Partition Find and Mount」を実行して、以前の「C:」だった「Partition2」を「B:」に、「マイドキュメント」だった「Partition2」を「G:」にマウントし直した。そして、必要なフォルダやファイルを USB メモリにコピーした。しかし、1GBのメモリはたちまち一杯になったので、「G:」の必要なファイルはDVDに焼いてしまうことにした。その作業の過程で、壊れて読み取れなくなっているファイルがいくつか発見されたが、それは数にして20個も無かったと思う。
 しかし、DVDオーサリングソフトが、そのデータを一旦ハードディスクにコピーしてから行うということを知らなかったので、それがわかったときにはもう進行している最中だった。しかし私はキャンセルせずにそれを黙認した。
 それが終わってから「Partition2」を選択して「B:」にマウントしてみたが、結果は次のようになった。
fnm5
 この領域は、先ほどまではちゃんとマウント出来ていて、アクセスすることも出来たのだが、DVDを焼く際に上書きされてしまったので、ファイルやディレクトリが完全に壊れてしまって読み取れなくなってしまったのだ。一番惜しかったのは、送受信したメールの記録だった。やはり、このような作業は、全く別のハードディスクや USB メモリに行うのが一番確かな方法である。
 ともかく、このミス以外では、今回の復旧作業によって必要なファイルの99%以上が復活した。正に「奇跡の復活」であり、このような素晴らしいソフトを無償で提供している「Atola Technology」には「Thank you very very much!!!」である。
 ちなみに今回は使わなかったが、このソフトには、リカバリしたパーティションをディスクイメージにして保存できる機能もある。

戦後処理

 このようにして私は、今まで経験したことの無かった大危機から脱することができたのである。それは何と言っても、有益な情報を提供してくれている人たちと、消えてしまったパーティションをリカバリするという素晴らしいソフトウエアを、無償で提供しておられる開発者の皆さんのお陰だ。
 しかし、問題はまだ全部解決してはいない。
 ハードディスクの変則シリンダとヘッドを修正しなければならないし、80GB全部が「C:」という環境も変えなければならなかった。
 Windows デスクトップの「マイコンピュータ」のアイコンを右クリックして、メニューの「管理」をクリックすると、「コンピュータの管理」というプログラムが起動する。そのウインドウ左側の「ディスクの管理」をクリックすると、現在使用しているディスクの使用状況が表示される。
ディスクの管理
 この「C:」から新たなパーティションを切り分けようと試みたが、このツールではそれが出来なかった。
 また、その隣にある黒で表示された「未割り当て」という薄気味悪い領域も、削除してしまいたかったが、それも不可能だった。
 Windows XP の「DISKPART」は私には使い難いので、Linux の「fdisk」を使って行うことにして、またまたまたまた、Debian 4.0 をインストールした。
 お馴染みの「パーティショニング」で、いつものように「手動」にすると、次のように設定した。
パーティションテーブル
 そして、パソコンを再起動させて Debian を起動させ、「fdisk」を実行して、ディスクのジオメトリ(Geometry)を修正した。それを保存すると、「現在そのディスクはビジーなので、設定はコンピューターを再起動した後に変更されます。」という英語のメッセージが現れた。
 私はリカバリCDを入れてパソコンを再起動させると、またまた Windows XP のリカバリを開始した。いつもなら、最初のメッセージが現れるまでしばらく待たされるのだが、今回はなぜかすぐにそれが現れた。

Press	'R'	for standerd XXXXXXX System Recovery options.
		You will boot into the recovery partition or on CD if no recovery 
		partition is found.
Press	'F'	to format drive and perform a full system recovery.
		All data will be lost!

Press	'Q'	to quit and to boot the OS on hard disk.

 「R」を押すと、いつものようにリカバリが始まった。
 それを終えてパソコンを再起動させると、なんと現れるものが現れず、またまた黒い画面で止まってしまったのである。

次のファイルが存在しないかまたは壊れているため、Windowsを起動できませんでした。
C:\WNDOWS\system32\hal.dll

上記のファイルをインストールし直してください。

 ガーーーン!!!
 Windows Me から始まって、今までOSのインストールを数え切れない回数してきたが、こんなことは初めてだ。これを調べるために、またもう一台のパソコンを起動させるのが面倒になった私は、ubuntu 4.04.1 をインストールして、その「パーティションの設定」で確認してみると、「sad1」のファイルシステムが、「NTFS」でなくてはならないはずなのに、「FAT32」になっているのである。
 どうも、先ほど Debian をインストールして修正したときに、うっかり Windows Me のときの癖で、「C:」のファイルシステムを「FAT32」にしてしまっていたようだ。しかし XP は、そのままインストールされてしまっている。インストール先を持ち主に確認もしないで勝手に進行していくこのメーカーのリカバリでは、やはり勝手に「NTFS」にフォーマットするのかと思っていたが、どうもそうではなかったようだ。
 もしかすると、このメーカーの「リカバリ」とは、OSを普通にインストール方法とは違う方法で進んでいるのかもしれない。この状況から判断すると、どうもそのようだ。
 ubuntu のインストールを終えると、それに付随しているブラウザ Firefox 3.0.3 によって、私はまたまたネット上を検索しまくった。このエラーが出て悩んだ人は多いが、その修復の仕方は殆ど全て、「起動ディスクを使う」とか「回復コンソールを使う」とかで、それが不可能な場合は、「一からインストールし直す」というものであった。このノートパソコンには、フロッピーディスクドライブは付いていないし、リカバリCDしか手元に無い私には、その最後の選択肢しか残されていなかった。
『あぁ……、なんでこう、うまくいかないんだろう?』
 その原因の大半は自分にあることは、もうわかっている。
 まず第一に、ドジであるということ。
 第二に、深く考えず、衝動的に行動してしまうこと。
 第三に、各種設定を終えた後の確認が不十分なこと。
 第四に、……
 挙げていけばいくらでも自分の欠点がクローズアップされる。やはり自分には、コンピュータをいじくる素質が、基本的に欠落しているのだと痛感する。しかし、どうしても好きで止められないのだから仕方がない。
 こういうのを、
「~は死ななきゃ直らない。」
 と言うのだろう。
 一通り反省して気を取り直した私は、「sda1」を「NTFS」にフォーマットする設定をした。そして、番号通りに並んでいないパーティションを全て削除して、上から順に新たに作成し直して設定を保存した。
 インストールを終えた私は、パソコンを再起動させると、Windows XP の何回目か(回数はもう忘れた)のリカバリを開始した。
 すると今度は、最初のメッセージが現れるまでにかなり長い時間が掛かった。その間、ハードディスクがずっと回っている。きっと、またディスク全体をフォーマットでもしてるんだろう。
『あぁ、またオール C: かよ。』
 私は、投げ遣りな気分でそう思った。もう、どうでも良くなっていた。ここ数日間、ろくに寝ていないので、意識が朦朧としている。そんな状態でこのような作業をすること自体、そもそも危険なことなのだが、一日も早く元通りに戻したい私としては、前に進んで行くしかなかった。
 私の場合、諦め掛けたときに行き詰っていた物事が進展するということが良くある。今回もそうだった。
 リカバリは無事終わり、確認してみると、Windows XP は、私が望んでいた場所にちゃんと収まっていた。しかも、ディスクのジオメトリも正常に戻っているし、パーティションの番号も順番通り整然と並んでいる! 

# fdisk /dev/sda

The number of cylinders for this disk is set to 9729.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): x

Expert command (m for help): p

Disk /dev/sda: 255 heads, 63 sectors, 9729 cylinders

Nr AF  Hd Sec  Cyl  Hd Sec  Cyl     Start      Size ID
 1 80   1   1    0 254  63 1023         63   31246362 07
 2 00 254  63 1023 254  63 1023   31246425   15631245 0b
 3 00 254  63 1023 254  63 1023   46877670   15631245 0b
 4 00 254  63 1023 254  63 1023   62508915   66428775 05
 5 00 254  63 1023 254  63 1023         63   15631182 0b
 6 00 254  63 1023 254  63 1023         63   15631182 83
 7 00 254  63 1023 254  63 1023         63   15631182 83
 8 00 254  63 1023 254  63 1023         63    3903732 82
 9 00 254  63 1023 254  63 1023         63   15631182 83

 これで基盤が整った。あとは、Windows に必要なドライバやアプリケーションを、一つ一つインストールしていかなければならない。
 それがほぼ完了したのは、10月27日。
 実に、長い長い1週間であった…………。

メニュー  客間

(C) 2004-2015 Tano Kakashi All Rights Reserved.
inserted by FC2 system