みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

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

解決済みの質問

WindowsXPとWindows7のデュアルブートのトラブル解決法を教えて下さい

質問番号:5573265で、一度は解決しましたが、XP側のデバイスマネージャーのトラブルで、XPと7を再度それぞれ新規インストールしましたがブートマネージャーでXP側を選択するとパソコンが再起動してしまします。”bcdedit”の状態を下記に表示しますので解決方法を教えてください。お願いします。

Windows ブート マネージャー
--------------------------------
identifier {bootmgr}
device partition=C:
description Windows Boot Manager
locale ja-JP
inherit {globalsettings}
default {current}
resumeobject {識別子}
displayorder {current}
{ntldr}
toolsdisplayorder {memdiag}
timeout 30

Windows ブート ローダー
--------------------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.exe
description Windows 7
locale ja-JP
inherit {bootloadersettings}
recoverysequence {識別子}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {識別子}
nx OptIn

Windows レガシ OS ローダー
--------------------------------
identifier {ntldr}
device partition=D:
path \ntldr
description Windows XP

投稿日時 - 2010-01-26 22:13:43

QNo.5625741

困ってます

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

WindowsXPとWindows7のデュアルブートの構築は、
先に、WindowsXPをインストール。
次に、BIOSでは、起動HDDの順位は、変更しないで、
つまり、WindowsXPをインストールしたHDDからインストールする。
インストールの途中で、Windows7を、何処へ置くか聞かれたら、
HDD(ドライブ)を指定する。

質問者様の場合は、Windows7をインストール時に、BIOSで、起動HDDの順位を、変更してインストールした訳ですよね。

だから、
>はい、BIOSでのHDD起動順位変更によるものです。
起動順位変更して、起動すると、どちらも正常に、起動できる。

私の場合は、質問者様のような、状態でのマルチブートは、経験がありません。
現在、検証をとれる、あいたマシンも無い状態です。

ただ、7側のブートマネージャーからNTLDRを起動できれば、ブート可能なはずです。

なんとか、マシンを空けて、検証を取ってみます。

なを、
default=multi(0)disk(1)rdisk(0)partition(1)\WINDOWS

[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWSとで
diskの番号が異なるので、
>Xpだけのディアルブートになります。
BIOSでのHDD起動順位がXP側の場合は、
両方とも(0)です。
7側からの起動は、両方とも(1)ですね。

/NoExecute=OptIn については
http://support.microsoft.com/default.aspx?scid=kb;ja;875352

あと、Windows7は、隠しパーティションを作成する場合がありますが、
7側に、パーティションが2つ、有りませんか、
その場合は、disk(1)でなく、disk(2)となり、DでなくEに、なるのかな。
もし、光学ドライブが、EでしたらFになるかもです。
経験者、自信ありを取り消します。
なるべく早く、検証してみます、すいませんね。

投稿日時 - 2010-01-29 19:29:58

お礼

やっとデュアルブートに成功しました。
ハード側のBIOSをXP側のHDDに固定し、DVDも2台付けているため、そちらの順位を固定し、7側をフォーマットした後、パーティーションを削除しました。
7をインストールすると何度かの再起動時にブートマネージャーの表示が出て、XP側の選択画面も新たに表示されました。
デュアルブートは、まずソフト側ではなくBIOSをしっかり安定させておかなければならないようです。
私のつたない質問に何度も粘り強く答えていただき誠にありがとう御座いました。
大変に助かりました。

投稿日時 - 2010-01-30 09:40:50

ANo.8

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

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

回答(8)

ANo.7

Windows レガシ OS ローダー
--------------------------------
identifier {ntldr}
device partition=D:
path \ntldr
description Windows XP

上記の「\ntldr」はルート(C:¥)のパスです。
>どちらも7側から見るとDドライブにあります。
path D:\ntldr ですね。

Boot.iniは
default=multi(0)disk(1)rdisk(0)partition(1)\WINDOWS
かな。

投稿日時 - 2010-01-28 12:53:30

補足

path d:\ntldrにすると質問番号:5573265の付帯画面の様にエラーが出ます。
内容は
ファイル d:\ntldr
状態 0xc000000d

インストールディスクで再起動→コンピューターの修復と出ます

また、
default=multi(0)disk(1)rdisk(0)partition(1)\WINDOWS

とし、Xpブートで起動するとXpだけのディアルブートになります。

また
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect /NoExecute=OptIn
の内容は変更するのでしょうか教えてください。

投稿日時 - 2010-01-28 21:25:01

ANo.6

既存(Windows XP)のOSが起動できるHDDを起動順位にして、Windows 7のインストールを開始し、インストール先の選択で、
2台目以降のHDDを指定して、Windows 7のインストールする。

すると、Windows XPがインストールされているHDDのMBRが、Windows 7を起動できるブートマネージャを起動するように、書き換えられます。
それで、起動時にブートマネージャが起動されてブートメニューが表示され、どちらのOSを起動するかを選択できるようになります。

先に、XPがインストールされていて、後からWindows 7をインストールすれば、BCDの編集などは、必要ありません。

Windows 7のインストールは、既存(Windows XP)OSのHDDを、
起動順位の1番にBIOSを設定してください。

OSの選択をブートマネージャで、したいのならば、
BIOSの設定を変更して、インストールしては、いけません。

投稿日時 - 2010-01-28 12:31:27

ANo.5

>7側から立ち上げると
>XP側から立ち上げると
「側から」とは、BIOSでHDDの起動順位を変更して、起動ですか。

7側から立ち上げると
Cドライブがディスク0で、Dドライブがディスク1ですか
XP側から立ち上げると、やはり
Cドライブがディスク0で、Dドライブがディスク1ですか

>7側から立ち上げると
Cドライブが(7システム)”システム、ブート、アクティブ
この場合は、BIOSから、このドライブが起動されています。
システム(C)に、ブートマネージャがあります。
ブート(C)に、Winload.exeが有ります。
NTLDRも(C)にあります。
Boot.iniも(C)にあります。

NTLDRが(C)にありますか
Boot.iniは正しく記述されていますか。


BIOSの設定が、7用のHDDが優先(第一順位)で、
それを外して、XPを再インストール(HDDが1つなので起動順位は無視)。
7用の取り付け、7を再インストールした、優先起動(第一順位)なので、本来、XP用のMBRを書き換えて、ディァルブートになるのだが、書き換えてない。

BIOSの設定変更をしないで、
HDDの信号ケーブルを、XPと7で取り換えると、どうなりますか。

投稿日時 - 2010-01-28 00:21:02

補足

>「側から」とは、BIOSでHDDの起動順位を変更して、起動ですか。

はい、BIOSでのHDD起動順位変更によるものです。

>7側から立ち上げると
Cドライブがディスク0で、Dドライブがディスク1ですか
XP側から立ち上げると、やはり
Cドライブがディスク0で、Dドライブがディスク1ですか

こちらも上記のとおり、立ち上げたシステムディスク、つまりCドライブがディスク0になります。

>NTLDRも(C)にあります。
>Boot.iniも(C)にあります。

どちらも7側から見るとDドライブにあります。
また Boot.iniの内容は下記のとおりになります

[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 Edition" /fastdetect /NoExecute=OptIn

投稿日時 - 2010-01-28 08:43:14

ANo.4

No1の回答者様の、参考URLの、図8で、
BIOSから起動されるのは、どのHDDのMBRかが重要です。

図8では、基本パーティションですが基本ドライブ(アクティブ)
ですね。
BOOTMGRは、基本ドライブに有るわけです。
BIOSはアクティブなHDDのMBRへ、起動シーケンスを渡します。

基本ドライブ(アクティブ)なのは、XPがインストールされているHDDですよね。

現在、7は起動できるのだから、コンピューターの管理のディスクの管理で、アクティブ、システム、ブートなどが、どのHDDになっているか確認してください。

投稿日時 - 2010-01-27 19:06:13

補足

>現在、7は起動できるのだから、コンピューターの管理のディスクの管理で、アクティブ、システム、ブートなどが、どのHDDになっているか確認してください。

はい、7側から立ち上げると
Cドライブが(7システム)”システム、ブート、ページファイル、アクティブ、クラッシュダンプ、プライマリーパーテーション”
Dドライブが(XP)”アクティブ、プライマリーパーテーション”
になります。

また、XP側から立ち上げると
C(XPシステム)ドライブがシステム
D(7)ドライブがアクティブ
になります。

投稿日時 - 2010-01-27 22:00:35

ANo.3

>7用HDDのケーブルを外して、まずXPを再インストールしました。
この時、BIOSの設定は、XP用HDDが1番目とする、以後変更なし。
BIOS->(XP用HDD)MBR->NTLDR

>7側のHDDをつないで、XPのHDD内の”コンピューターの管理”(マイコンピューター→右クリック→管理)で、パーティーションの削除後、フォーマットをかけ、7を再インストールしました。

BIOS->(XP用HDD)のMBR->(7用HDD)のブートマネージャ->7(Dドライブ)のロード
この時は、XPはCドライブ、7はDドライブ。
しかし、7がロードされると、7がCで、XPがDになる(仕様)。
XPまでは、変化はなくDドライブのままだった。

XP用HDDから起動された、ブートマネージャは、7がDで、XPがCと認識している。

ブートマネージャがXPのNTLDRを起動する場合には、(XP用HDD)Cドライブにあると認識。

マルチブートの場合は、CとかDとかは、起動されたOSが決めるので、起動される前は、
HDDの番号、パーティションの番号で管理するのが基本です。

投稿日時 - 2010-01-27 11:47:45

補足

>マルチブートの場合は、CとかDとかは、起動されたOSが決めるので、起動される前は、HDDの番号、パーティションの番号で管理するのが基本です。
HDDの番号、パーティションの番号を調べる方法。
また、変更や固定できる方法と、7側からの設定を教えていただければ幸いです。

投稿日時 - 2010-01-27 21:28:48

partition D: に ntldr はありますね。

win7起動時に「F8」を押したまま起動して(またはwin7インストールDVDで起動して、または修復ディスクの作成で作成済みのwin7修復CDで起して)「スタートアップ修復」を行なってみて、状況を見てはどうでしょうか。

投稿日時 - 2010-01-27 09:23:30

補足

>partition D: に ntldr はありますね。

はい、確かに7側から見るとDドライブにあります。

>win7起動時に「F8」を押したまま起動して(またはwin7インストールDVDで起動して、または修復ディスクの作成で作成済みのwin7修復CDで起して)「スタートアップ修復」を行なってみて、状況を見てはどうでしょうか。

スタートアップ修復を行いましたが結果は同じでした。

投稿日時 - 2010-01-27 21:24:39

ANo.1

当初の質問では
>Cドライブに”Windows Xp”、Dドライブに”Windows 7 professional”をディアルブートしようと、
>Dドライブに”Windows7”をインストールしました
と書いてあるのに逆になってますが?
それは意識されての行為なのか。

で、これは物理的にひとつのHDD内でデュアルブートしてるのですか?
その場合、パーティションの「前側」にあるのはレガシーOS(XP)でしょうか?
もしそうなら提示されたBCDはおかしいです。
path \ntldr
はXP側のパーティションにあるはずなのにBCDではDとパスを指定してますので。

同一のHDDでデュアルブートするのならレガシーOSをパーティションの前側に持ってくるのが原則です。
その場合BCDの記述は
device partition=C:
path \ntldr
および
device partition=D:
path \Windows\system32\winload.exe
description Windows 7
となってブートマネージャがXP側のパーティションに作られるはずです。

>XPと7を再度それぞれ新規インストール
とありますが、もしかして7を先に入れてXPをそのあとインストールし直し、
BCDを再構築しましたか?
もしそうなら下記を参考にBCDを再構築してみてください。
http://itpro.nikkeibp.co.jp/article/COLUMN/20090113/322746/?ST=win&P=4

それと再起動におけるエラー内容は把握されていらっしゃいますか?
それも教えてください。

投稿日時 - 2010-01-26 22:40:48

補足

ご返答ありがとう御座います。
まず、ドライブの構成ですが、2台のHDDで構成されています。
Xp側でいうと CドライブがXP Dドライブが7
7側でいうと Cドライブが7 DドライブがXP
です。
次に再インストールの件ですが、一度7側のデーターを残し、HDDのケーブルを外して、まずXPを再インストールしました。
その後、7側のHDDをつないで、XPのHDD内の”コンピューターの管理”(マイコンピューター→右クリック→管理)で、パーティーションの削除後、フォーマットをかけ、7を再インストールしました。
また、再起動時のエラーでは、ドライブをGにした場合、前回の質問の際に紹介した画面が表示され、Cにするとブートからの再起動になります。
よろしくお願いします。

投稿日時 - 2010-01-27 08:03:01

あなたにオススメの質問