banyantree

banyantree -photo & music blog-

windows復活!

元からwindowsが入っていたHDを、qtpartedというソフトで後からパーティション切って、linuxとデュアルブート環境にしたのですが、windowsが起動しなくなりました。

その時のmsgは「a disk error occured」みたいな感じだったと思います。

しかし、linuxからwindowsのパーティションをマウントできて、中のファイルも見れたので、windowsはまだ生きていると思い、復旧作業を行いました。

その結果、結構苦戦しましたが、ついにwindows復活!

自分のやった手順を書いておきます。

↓の参考サイトを見て、必要なツールを揃える。

http://lets-go.hp.infoseek.co.jp/testdisk1.html

「【TestDisk】を使ってパーティションテーブルを回復」の手順に従い、矛盾のない領域を選択する。

これによって↓の画像の状態になった。

「Incorrect number of heads/cylinder 255 (NTFS)  !=  16 (HD)

の表示が出ている。

20070203034852.jpg


 ↓number of heads per cylinderの数値を、geometry menuで16から8に変更しろと言っている。

20070203034859.jpg

↓そのように設定すると、先ほどのmsgは消えた。


20070203034906.jpg

↓アクティブな基本領域「*」をNTFSに設定し、linuxのパーティションは、アクティブではない基本領域「P」に設定した。


20070203034913.jpg

↓この設定でwindowsが起動するかと期待を込めてリブートしたが、今度は「NTLDR is missinng」のmsg。

しかし、linuxからwindowsのパーティションをマウントした時、NTLDRは存在していた。

先ほどのサイトに、

ただしこの NTLDR is missing というエラーがでる場合の大半は、NTLDRそのものの損  傷・消失とは違う原因で起こると思われます。

とあったので、ディスクパラメータを疑ってみることにする。


20070203034920.jpg

【TestDisk】を使ってブートセクタ(ディスクパラメータ)を回復の手順に従い、ブートセクタを参照すると、↓の画面の状態だった。

boot sectorはOKではあるが、heads/sylinderの数値が255になっているので、240に治せと言っている。

backup boot sectorは駄目なようだ。


20070203034927.jpg

debugを覗いてみると、backupは完全に破壊された状態、boot sectorは「1シリンダあたりのヘッド数」の領域が「ff」つまり「255」になっている。

さっき、この数値を240に治せとmsgが出ていたので、治すことにする。


20070203034936.jpg

写真を撮り忘れたが、PTS DiskEditorというツールを使い、「ff」を「f0」に手動で修正した。

右はbackup boot sectorが復活しているが、これは念のため、修正を加える前にオリジナルのboot sectorをバックアップにコピーしておいたもの。なので、バックアップ側はまだ「ff」の状態になっている。


20070203034943.jpg

↓確認すると、boot sectorは「OK」表示になった。buckupは修正してないので、エラーメッセージが出ている。両者が一致していないので、sectors are not  identical表示。


20070203034950.jpg


↓この設定でwindowsを起動してみると、めでたく起動しました!


20070203035003.jpg


↓この設定で正しいのが解ったので、念のためboot sectorをbuckup boot sectorにコピーしておきます。

これでスッキリした表示になりました。

20070203034957.jpg



結局、非常に丁寧に解説されているサイトのおかげで助かったのですが、いまいちよく解らない所があります。

最初の

「Incorrect number of heads/cylinder 255 (NTFS) != 16 (HD)

のmsgと、

後に出てきた

「Incorrect number of heads/cylinder 255 (NTFS) != 240 (HD)

の違いです。

最初のMSGに対しては、次の画面で出てきたジオメトリ・メニューで値を変更の通りに対応したのですが、2回目のMSGに対しては、ディスクパラメータを編集で対応しました。
この対応が合っているかどうかも解らないのですが、二回出てきたMSGの違いが何なのでしょうか?

まあ、windows起動できたので、良しとしますが。。
  1. 2007/02/03(土) 03:56:49|
  2. diary
  3. | トラックバック:0
  4. | コメント:0

counter

recent

month archive

category

news

serch

RSS feed

link

このブログをリンクに追加する