TIPSその7
「ディスクイメージツールを使ってコピーしたパーティションから起動できない場合の修復方法」
●注意●
ここで示す操作は中・上級者向けのものです。初心者向けではありません。ここで書かれた内容を理解できない場合は、絶対に操作しないでください。間違えると取り返しのつかない結果になる恐れがあります。
ディスクイメージツールを使用してWindows 2000/XP/2003がインストールされたパーティションを丸ごと別のHDDにコピーした場合に、そのコピー先パーティションからWindows 2000/XP/2003が起動できない場合があります。その場合でも、別のWindows 2000/XP/2003からはそのパーティションを読み書きできます。またNTLDRなどをコピーした起動用フロッピィを使うと正常に起動できます。
これは、コピー元とコピー先HDDのジオメトリ (CHS) が異なっていることが原因です。つまり、Windows 2000/XP/2003のパーティションを丸ごとコピーすると、コピー元のジオメトリが記述されたパーティションブートセクタがそのままコピー先のパーティションブートセクタとしてコピーされます。Windows 2000/XP/2003のIPLは起動時にパーティションブートセクタのジオメトリをチェックし、それが実際のジオメトリと異なっていると起動動作を中止してしまいます。このとき、「NTLDR is missing」というエラーメッセージを出す場合もありますし、何もメッセージを出さない場合もあります。
この状態でも、別のパーティションから起動したWindows 2000/XP/2003はそのパーティションを読み書きする際にはジオメトリのチェックを行いませんので、正常にアクセスできます。またフロッピィから起動した場合は、IPLはフロッピィのジオメトリをチェックするだけですので正常に起動できます。
このようなトラブルは非常にまれですが、ときに起きます。なぜまれかと言うと、最近のHDDではジオメトリの内Head値とSector値がほとんど同じHead=255、Sector=63となっているからです。しかし、数は少ないですが、Head値が240のものがあります。また古いHDDですとSector値が違うものもあります。
例えば、Head=255のHDDからHead=240のHDDにWindows 2000/XP/2003のパーティションを丸ごとコピーした場合に、本来Head=240とならなければならないのがHead=255としてコピーされてしまい、起動できないということになります。
ジオメトリはパーティションブートセクタだけでなく、MBRのパーティションテーブルにも記述されますが、ディスクイメージツールもパーティションテーブルのジオメトリは自動的に修正しているようですので、MBRの方が問題となることはないようです。
このようなトラブルが起きた場合は、パーティションブートセクタのジオメトリを正しいジオメトリに書き換えてやれば解決できます。
正しいジオメトリはDisk Probeの「Drives」→「Volume Information」で確認できます。その画面で「Tracks/Cylinder」というのがHead値で、「Sector/Track」というのがSector値です。
この値を、「View」→「NTFS BootSector」(または「FAT-16 BootSector」) 画面の「Head」値および「Sector per track」値と比較し、違っていたら書き換えてやります。
(by ITAYA)
これで修復できない場合はハードディスク修復/データ回復サービスをご利用ください。
|