プロが教える店舗&オフィスのセキュリティ対策術

XPの入ったデスクトップで、次の方法によりWindows7をためしてみようと考えました。
すなわち、Eドライブ(約190GB)の空き領域(約67GB)に新たなパーティションを区切ってYドライブ(約40GB)を作成し、そこにWindows7をインストールし、デュアルブート環境にする(HDDはもともとC・D・E三つのパーティションに区切られていました)。
で、新たなパーティションを作成するために、EASEUS Partition Managerというパーティションエディターを使用することとしました。
ところが、パーティションの編集作業が終わって再起動してみたところ、「<windows root>\system32\hal.dll.」が存在しない、または壊れているから起動できない、とのこと。
そこで、さしあたり(予め作成しておいた)Windows7のDVDを挿入し、インストール先として、先に作成した新たなパーティションを指定し実行しました。
そうすると、いちおうデュアルブート環境になったようで、OS起動前にWindowsブートマネージャ画面が出現し、OSの選択を促されました。
Windows7はふつうに起動できますが、XPは依然として起動できません。
当初は、Cドライブが入れ替わっている(つまりXPがインストールされた元のCドライブはWindows7上では認識されていない)というふうに把握していましたので、元のCドライブにアクセスするにはXPを復活させるしかないと考えていました。
ところが、しばらく使っていると、元のCドライブがWindows7上のDドライブとして認識されるようになっているのに気付きました。元のCドライブにアクセスできるようになったわけです。
しかし、こんどは、再起動しようとしてもWindowsブートマネージャ画面が現れなくなりました(「起動と回復」「起動システム」「既定のオペレーティングシステム」で表示されるのもWindows7のみ)。強制的にWindows7が起動します。XPのシステム復元ディスクを挿入しておいて「R」キーを押して次に進んだ場合も同様です。これでは、せっかくネットで調べたXPの復元方法を試すこともできません。
以上、ろくに知識がないのに、パーティションを区切ってデュアルブート環境に、などと考えた私が遭遇したトラブルです。
この状況からXPを復活させるためにはどうすればよいか(Windows7はもはや消えてなくなってもけっこうです)、ご教示いただきたいと存じます。
よろしくお願いいたします。

A 回答 (4件)

ただXPが選択できないというだけであれば、マスターブートレコード(MBR)を復旧させてやればいいだけなんですが、



>パーティションの編集作業が終わって再起動してみたところ、「<windows root>\system32\hal.dll.」が存在しない、または壊れているから起動できない

これも怪しいですねぇ。パーティション操作の時にトラブルが発生したとしか思えないんですが。復活させても、XP が起動してくれるかどうか。

自分が同様の状態だったら、Knoppix などの 1CD linux から起動してパーティションにブートフラグが立ってるか確認したり、ブートローダーを突っ込んだりするような気がしますが、文章で説明するのはとても大変です。誰かもっといい手段を知っているかもしれませんので、とりあえず参考意見ということで。

この回答への補足

http://www5f.biglobe.ne.jp/~ayum/sample/mbr.html
上記URL「マスターブートレコード(MBR)の修復」「Windows 2000/XP の場合」のCの段階で「R」キーを押しても次に進むことができません。Windows7が起動しはじめます。ここを突破できたら何とかなりそうな気がするのですが。
あと、「パーティションにブートフラグが立ってるか確認」する方法等に関し、具体的手順が紹介されたサイトのURL(またはそのようなサイトを発見するための検索キーワード)を教えていただければ幸いです。言語は日本語のほか、英語でも可です。

補足日時:2009/01/20 18:37
    • good
    • 0
この回答へのお礼

迅速なお返事ありがとうございました。

お礼日時:2009/01/20 18:39

なんとなくですが、XPの『boot.ini』の記述がおかしくなっているかもです。



http://okwave.jp/qa4639040.html

上のURLは、今私がアドバイスしている方のものですが、よく似た状況です。

『boot.ini』の記述の仕方は、上のURLを参考にしてください。
XP Homeの場合

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home" /noexecute=optin /fastdetect /usepmtimer


あと、Windows7の『コントロールパネル』から『システムとメンテナンス』を開き、『管理ツール』の、『ハードディスクパーティションの作成とフォーマット』を開いてどのパーティションがアクティブになっているか教えてください。

この回答への補足

boot.iniは現在、以下の内容でDドライブ直下にあります。

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect /PAE

また、アクティブになっているドライブにはドライブレターがありません。以下、元のドライブレターとの対応関係等を掲げておきます。何かお気づきの点ございましたらまたよろしくお願いいたします。

D→ドライブレターなし。「システム、アクティブ、プライマリパーティション」。
C→D(XP・Home)。「プライマリパーティション」。
E→E。「プライマリパーティション」。
Y→C(Windows7)。「ブート、ページファイル、クラッシュダンプ、プライマリパーティション」。

補足日時:2009/01/20 19:54
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

お礼日時:2009/01/20 19:55

1・・・XPがインストールされているボリュームのルートからFDにNTLDR・BOOT.INI・NTDETECT.COMをコピーします



2・・・FDにコピーしたBOOT.INIを編集します
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(*)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(*)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn
partition(*)のところが本来Cドライブの場合 1 になります

3・・・HDDのブートセクターを直接編集します(cylinder 0, head 0, sector 1 の位置)
Cドライブ(一番初めのパーティション)にブートフラグを立てます
(わたしは、PTS-DiskEditorというソフトを使用しています)

4・・・NTLDRなどをコピーした1のFDで起動します
(Cドライブのシステムファイルに損傷や大きな変更がなければとりあえずは起動するはずです)

5・・・起動することが確認できたら回復コンソールからFIXMBRでマスターブートレコードの修復をしておきます

とまあ、私なら大体こんな手順でしょうか

1つのディスクでマルチブートはトラブった時は何かと面倒なので、HDD毎入れ替えるほうが簡単ですね
わたしは、Linux,XP 32bit,XP 64bit,さらにCAD,Graphicなど用途ごとにHDDを入れ替えています

この回答への補足

bubu9さんのアドバイスどおりにboot.iniを編集したうえで、PTS-DiskEditorを使って「HDDのブートセクターを直接編集」したところ、XPが復活し、当初企図したとおりのマルチブート環境になりました。
このたびは本当にありがとうございました。

補足日時:2009/01/20 23:28
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。#1さんとほぼ同じ方針のようですね。私にはちょっとむずかしいので、「PTS-DiskEditor」をキーワードに、いま勉強中です。気づいた点がありましたらまた補足いたします。取り急ぎ、お礼申し上げました。

お礼日時:2009/01/20 20:30

補足ありがとうございました。


『boot.ini』のpartition(2)をpartition(1)に変更します。
あとは、ANo3 fayefayeさんのアドバイスでいけるでしょう。
( fayefayeさんありがとうございました。 )
    • good
    • 2
この回答へのお礼

bubu9さんのアドバイスどおりにboot.iniを編集し、fayefayeさんおすすめのソフトを用いてHDDのブートセクターを直接編集したところ、問題解決できました。
このたびは本当にありがとうございました。

お礼日時:2009/01/20 23:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!