
ちょっと特殊な Windows でのデュアルブート
お世話になります。
Windows XP、Windows 7 でデュアルブート環境を構築しております。
今やりたい事は bios のブートドライブの優先順位によって
・ XP (ドライブ) を選択したら XP が無条件に立ち上がる
・ 7 (ドライブ) を選択したら 【XP/Win7 のブート選択画面】になる
という事をやりたいのです。
今現在、bios 切り替えによる各 OS の立ち上がりは問題なく、また
bcdedit / bootrec と EasyBCD を駆使して Windows 7 起動時に
7/xp のブート選択画面
までは表示することは出来ました。しかし 7 上でのブート画面で XP を選択
しても、数秒後に再起動になり起動することが出来ません。
Win7 の DVD 起動の修復からコマンドプロンプトを立ち上げ、bootrec の
/rebuildbcd や bcdedit でドライブパスを確認/変更したり、bootsect で
Windos XP には /NT52 、Windows7 には NT60 など色々試しているのですが、
結果が伴いません。
本環境はパーティションを切らずに物理ドライブとして、
HDD 1台目(Primary1 Cドライブ) Windows XP インストール
HDD 2台目(Slave1 Dドライブ) データドライブ
HDD 3台目(Primary2 Eドライブ) Windows 7 インストール
DVD 4台目(Slave2 Fドライブ) CD/DVD
という風に組んでおります。
bios 選択で切り替えて起動できるようにしているので、MBR は C ドライブと
Eドライブに入っていることになります。
このような環境で、Windows7 を起動ドライブにした時に Windows XP を
ブート画面から選択させ起動させる事は物理的に可能でしょうか?
インターネット記事で記載されている一般的?なデュアルブートなら問題なく構築
出来ているのですが、私がやろうとしているデュアルブートの記事が中々見つからず
そもそもこのような環境が構築可能なのかどうか、疑問に持った次第です。
どうぞよろしくお願いします。
No.4ベストアンサー
- 回答日時:
Win7とXPをブートマネージャーに表示させて、起動OSを切り替えるには下記の方法です。
手順は大きく分けて4つの工程を踏みます。
1.Windows 7をインストール時に作成される、100MBの先頭のパーティションの領域にアクセス
出来るように、ドライブ文字を割り当てます。
2.100MBの領域にXPの起動に必要な4つのファイルをコピーします。
3.boot.iniを修正します。
4.ブートマネージャにXPのエントリーを追加します。
Win7がデフォルトで起動できるように、Win7をインストールしたHDDと、XPをインストールしたHDDを接続し、Win7を起動させます。
Win7が起動したら、ディスクの管理でWin7をインストールしたHDDの先頭のパーティションに、100MBのドライブ文字が割り当てられていないパーティションがあります。
このドライブ文字が割り当てられていないパーティションを右クリックして、表示されるメニューの 「ドライブ文字とパスの変更」から適当なドライブ文字を割り当てやり、ドライブにアクセスできる ようにしておきます。
XPをインストールしたドライブのルートにある下記の4つのファイルを、ドライブ文字を割り当てた100MBのドライブにコピーします。
(拡張子、全てのファイルとフォルダ、システムファイルを表示できるようにしておく事)
boot.ini
bootfont.bin
NTDETECT.COM
ntldr
コピーしたboot.iniファイルを開いて、HDDの構成に合わせARCパスを修正します。
3番目のHDDにXPがインストールされている場合、下記のように2箇所あるrdisk(0)の所をrdisk(2)に修正します。
ARCパスを確認するには、XPの回復コンソールを起動し「map arc」とタイプし「Enter」て確認します。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(2)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(2)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect
EasyBCD 1.7.2を起動して、「Add/Remove Entries」ボタンを押し、「Add an Entry」の「Windows」 タブの「Type」で「Windows NT/2k/xp/2k3]を選択、「Name」にWindows XP Homeなどと名前を入力後、右下の「Add Entry」ボタンを押して完了です。
この回答への補足
質問を投稿してから、自力で何とか XP のブートファイルをコピーする必要性がある事実に辿り着き、
boot.ini の編集を試行錯誤して行い、つい先ほどデュアルブートすることが出来ました。
10FSR 様のご回答が最も適切だと思いますので、ベストアンサーに選ばせていただきます。
他の方々もありがとうございました。
No.3
- 回答日時:
XPの起動ドライブ を Win7を立ち上げた時に 表示される XPのシステムのある ドライブ( C: 以外) に してみては
例えば Win7を立ち上げた時に XPのあるドライブがE: ならば
bcdedit /set {ntldr} device partition=e:
もちろん EasyBCDで変更しても良いと思います。
No.2
- 回答日時:
>HDD 1台目(Primary1 Cドライブ) Windows XP インストール
>HDD 2台目(Slave1 Dドライブ) データドライブ
>HDD 3台目(Primary2 Eドライブ) Windows 7 インストール
>DVD 4台目(Slave2 Fドライブ) CD/DVD
1台目選択のときにXPと7の選択とし、3台目選択のとき7の単独起動なら可能です。
Windowsのブートシーケンスとドライブレターの割当の関係で希望通りにはならないともいます。
今の状態では3台目を起動デバイスに選択すると1台目のXPがあるドライブレターはC以外になり起動出来ないはずです。
Windows Vista/7は何処にインストールされていてもドライブレターをCに割り当てられますが、Windows XPの場合は同様の設定になりません。

No.1
- 回答日時:
> そもそもこのような環境が構築可能なのかどうか、
決して特殊ではなく一般的なdualbootですので可能です。
※OSのbootloaderが存在する「デバイスとパーティション」、「ブートローダ名」を指定すれば目的のOSをbootできる、という一般的な方法です。
方法1:win7のbootmgrでxpのデバイス、パーティション、ブートローダ名を次のようにsetすればいいでしょう。
device partition=c:
path \ntldr
※追加質問にあたってはwin7 bcdeditコマンドで出力した結果を、そのまま(脚色や省略しないで)コピーして貼り付けてください。
方法2:win7にgrub4dosをインストールして(インストールといってもただ単にファイルを展開、コピーするだけの作業)grub4dosのbootloaderでxpを起動する。
※実際にやってみると、この方法でのデュアルブート(マルチブート含む)は簡単で、使いやすく、拡張性があることが解ります。(Windowsのbootloaderが使いにくいことが実感できます)
この回答への補足
ご回答ありがとうございます。
方法1の方はすでに試しており、起動できない事が確認取れております。
また補足で説明するのを忘れていました。
Windows7 回復プロンプト上では
HDD1 は C ドライブで Windows XP になり、
HDD3 は E ドライブで Windows 7 になります。
Windows7 が起動すると、
HDD3 は C ドライブで Windows 7(当然ですが) になり、
HDD1 は E ドライブで Windows XP になります。
これらのパスを確認し、
device partition=E:
を調整したところ、Windows XP の E ドライブをしている事で xp に
切り替わる動作が行われる感じですが、途中で終了してしまいます。
( 念のため、Cを含め他のドライブ全て検証すると「見つかりません」エラーになりますね )
bootmgr に関しては熟知しているので、各設定には問題ないかと思います。
bcdedit /create {ntldr} /d "Windows XP"
bcdedit /set {ntldr} device partition=e:
bcdedit /set {ntldr} path \ntldr
bcdedit /displayorder {ntldr} /addlast
を行い bcdedit でドライブ設定やパスは確認済みです。
この方法では一筋縄行かない様な気がしており、今回質問させていただきました。
方法2の方は試した事ありません。方法1で出来無い場合、方法2で試させてただきます。
ご回答ありがとうございました。
すいません、記入間違いをしていました。
OKWave って文言修正出来ない用ですので、ここに記載させて頂きます。
補足で記入した、
device partition=E:
となっている箇所は
device partition=C:
です。やっていることは partition=C: で、それ以外は同一ですが起動しないのには変わりませんので、
MBR が複数のドライブに存在している場合は、この方法では難しいのかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
回復ドライブはmicroSDカードや...
-
回復ドライブ作成の成否を確認...
-
インストールできないですどう...
-
このスペックはWindows 11 は厳...
-
Microsoft Officeを2台目のPCに...
-
Active X をインストール済かど...
-
office2010とoffice365の共存で...
-
インストール方法
-
PDFアプリのインストールに...
-
dell ノートパソコン 起動しな...
-
Teamsにログインできない
-
eo光のマカフィーマルチアクセス
-
wordのみ開かない
-
「Volumes」というフィルダにつ...
-
スマホの写真アプリ
-
SunOSでコンパイルエラー
-
このPCにwindows10をインストー...
-
mac osの見た目はlinuxに似てい...
-
KB 2686509
-
i7-3540番のCPUノートパソコン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
回復ドライブはmicroSDカードや...
-
回復ドライブ作成の成否を確認...
-
windowsの低速化
-
PC9821V20で4領域の一つにWIN95...
-
外付けのUSB接続の光学ドライブ
-
外付けCD-ROMでリカバリーで...
-
Cドライブ拡張のため、フリーソ...
-
4tbが認識しない
-
CドライブSSDの交換。初期化の...
-
SSD増設のドライブレターについて
-
Win98/Win2000デュアルブートで...
-
ディスクトップPCにWindows10を...
-
USB外付けドライブで「パーティ...
-
Cドライブのイメージ作成・レス...
-
OSが起動しなかったり、CDDVDメ...
-
PCの設定と不具合について質問...
-
XPで4TBのディスクを認識する方...
-
外付けDVDドライブでOSを再イン...
-
起動ドライブをEからCに変更し...
-
欠落エクスポートMFC42.DLLと表...
おすすめ情報