こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VistaとXPのデュアルブートについて教えてください。

VistaとXPのデュアルブートについて教えてください。
先日、デュアルブート環境で、XPの動作が不安定になり、同じハードディスクに初期化してXPをインストールし直しました。

それをやると、NTローダが読めないと言われ立ち上がらなかったので、とりあえずVistaのディスクを使ってbootrec.exeからMBRを修復してVistaのOS選択画面からVistaのほうを立ち上げられるようにして、VistaのほうでXPのハードディスクを見てみたところ、NTローダがインストール時にコピーされてなかったようなのですが、なぜなのかわかりません。(1)
NTLDRとNTDETECT.COMをXPのディスクからコピーしてXPをインストールした側のrootにおいたところ、いつものようにインストールが開始されてXPを入れてデュアルブートを構築し直すことができました。
ところが、Vistaと以前のOSの選択画面を過ぎるとXPが起動するはずなのですが、なぜかまたOSの選択画面が出ます。Windows XPともう一つ下に同じくWindowsXPと二つXPが並ぶ状況です。
上のほうを選択するとXPが起動しました。(2)
2、3日その状態で、ドライバなどなどをインストールしていたらある日突然XPがロードされなくなりました。

Vistaのほうはきちんと動いています。
どうやらboot.iniの設定が何かの拍子で変更されたのではないかと思いますが、パーティションなどの知識が疎いためどのように設定すればいいかわかりません。(3)

現在のVistaで見た設定は以下のようになっています。
Windows Vista(C:)
Windows XP(D:)

XPがきちんと動いているときにboot.iniの中身を見たのですが、よくわかりませんでした。
うろ覚えですが、
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn
multi(0)disk(0)rdisk(1)partition(2)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn
こんな感じだったと思います。

説明が長くなってしまって質問がわかりずらいと思います。
(1)NTLDRがハードディスクにコピーされなかった理由。
(2)なぜ同じOSを選択する画面が出るのか。
(3)boot.iniの設定方法。
がわかりません。
説明不足な点や間違っている点もあるかとは思いますが、どなたかご存知の方がいたらなんてもよいので教えていただけると幸いです。
よろしくお願いします。

投稿日時 - 2010-02-06 22:43:49

QNo.5654903

すぐに回答ほしいです

質問者が選んだベストアンサー

よく調査されて、適切な処置だと思います。

非常に難しい問題です。

一つは、Microsoftがこのあたりの情報を公開していないことです。
二つ目は、少し情報が不足いていることで、勝手に想像するしかないようです。

> Vistaのディスクを使ってbootrec.exeからMBRを修復してVistaのOS選択画面からVistaのほうを立ち上げられるようにして
この操作は、どこまでやられたかです。
bootrec /fixboot
bootrec /fixmbr
この二つのコマンドを入れたかどうかです。

> 同じハードディスクに初期化してXPをインストールし直しました。
これが問題というより重要な気がします。
1.リカバリCD/DVD-ROMでリカバリした。
2.Microsoftの正規版でインストールした。
3.XPのインストール場所です。
内蔵HDDの低い番地というか、既定値という場所(ディスクの管理の図で左端)であれば、VISTAのbootrec
が正しくセットできたのではないかと思われます。

このあたりを勝手に想像すると、リカバリでのインストールであれば、無条件で、XPだけが起動できたと思われます。
よって、Microsoftの正規版だと思われます。
この場合は、MBRがVISTAで書かれたものであるため、誤動作したと思われます。

また、既定値としてのOSが、XPなのか、VISTAなのかで、3.の位置関係で、bootrecの機能が正しく反映されるかなのです。

これも不具合が出たのであろうと想像しております。

よって、OSだけではないのですが、アプリケーションも同じなのですが、
上位互換は保証しないが、下位互換は保証するということからすれば、
XPをHDDの下位に入れ、
bootrec /fixboot
bootrec /fixmbr
を入れれば、保証されるのではないかと思われます。

この論理は、単なる想像でしかありません。
実際に検証しておりません。

投稿日時 - 2010-02-07 00:07:07

お礼

回答ありがとうございます。
bootrec.exeは/fixboot、/fixmbrの両方を入れました。
XPはMicrosoftの正規版でインストールしました。
あと補足なのですが、VistaとXPのハードディスクは別のものを使っています。
ハードディスクのパーティション分割は行っていません。

投稿日時 - 2010-02-07 10:16:16

ANo.3

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

> XPはMicrosoftの正規版でインストールしました。
やはりそうですか。

> あと補足なのですが、VistaとXPのハードディスクは別のものを使っています。
> ハードディスクのパーティション分割は行っていません。
では、どちらがマスターなのかです。
できれば、XPをマスターにして、もう一度、
bootrec /fixboot
bootrec /fixmbr
を試してみてはどうでしよう。
下位互換でVISTAの方で修正してくれると思われます。

ご存知だと思いますが、MBRは、マスターの方に書き換えられます。

投稿日時 - 2010-02-07 10:47:25

お礼

お礼の返事が遅れてしまいすみません。

どうやらMBRの問題ではなくXPをインストールしていたHDDのパーティションがおかしなことになっていたようです。インストール時に分割していなかったのですが、なぜか未使用な領域が1KBほどありそれが問題だったようです。
一度XPの入っていたほうを物理フォーマットかけて再び組んだところ正しく認識されるようになりました。

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

投稿日時 - 2010-02-19 17:24:43

ANo.2

質問とはずれてしまいますが
 そういう苦労はしなくていいハードで切り替え
http://www.twotop.co.jp/details/?j=4937925914852&pd=0

投稿日時 - 2010-02-06 23:48:07

お礼

回答ありがとうございます。
こんなものもあったのですね。
いろいろと調べてみたいと思います。

投稿日時 - 2010-02-07 10:05:20

ANo.1

参考に
http://www.center-left.com/blog/archives/2007/01/vistaxp_1.html

投稿日時 - 2010-02-06 23:00:37

お礼

回答ありがとうございます。
参考にさせていただきます。

投稿日時 - 2010-02-07 10:06:41

あなたにオススメの質問