どうも、なかやんです。
本日は「マルチブート」に関するお話です。

上記のPCに、Windows XP 〜 11までのOSをシックスブート(6個のOS)出来そうだったので、試してみました。(Windows 8 のメディアのみ所有していないため「XP/Vista/7/8.1/10/11」の6OSです)
目次
PCのスペック
本検証で使用したPCのスペックは以下の通りです。
| 項目 | 仕様 |
|---|---|
| マザーボード | ASUS P8H61-M LX |
| メモリ | DDR3-1333 4GB×2 |
| CPU | インテル® Core™ i5-3470 プロセッサー |
| グラフィックカード | CPU内蔵(Intel HD Graphics 2500) |
| ストレージ | 1TB HDD(7200rpm)・64GB SSD |
ストレージは1TBのHDDと、64GBのSSDを付けています。
1TBの方にはWindows XP 〜 10を、SSDの方にWindows 11 をインストールする予定です。
CPUはIvy Bridge世代であり、正式にはWindows 11 のシステム要件を満たしていませんが、レジストリの変更等でインストールします。
複数OSブートの注意点
マルチブートを構築した際、以下の問題が発生する恐れがあります。
- 動作の不安定
- ブートローラーの故障により全OS起動不可
- 誤った操作によるデータ削除
個人的に 日常用途のPCにおけるマルチブート環境の構築は、推奨しません。あくまでも検証用として使うのが良さそうです。
また、もう一つ注意点として 使用するOS毎に有効なプロダクトキー(アクティベーションキー)を用意しておく必要があります。
マルチブートのポイント
マルチブートのポイントは、次の通りです。
- ドライバのインストールは、最後にまとめて行う
→マルチブートは、OSインストール中に環境が故障する場合があり、毎回ドライバのインストールをし直すのは大変なため。 - パーティション操作には、外部ツールを活用する
→Windows標準の「ディスクの管理」は安全ではあるものの、細かい操作ができないことがあるため、「MiniTool Partition Wizard」などのパーティション管理ツールを使用すると簡単に操作を進められます。
前準備
ASUSのサイトを確認しても、SATA ドライバが見当たりません。この状態では、Windows XPをインストールできないため BIOSからSATAコントローラー 動作モードをIDEに変更しました(探せば代用可能なドライバがあると思いますが...)

複数OSマルチブート構築開始
Windows XP
早速Windows XPのインストールです。


PC起動時に、CDを挿入し CDからブートします。
インストール先のディスクを指定する際に、手動でパーティションの作成を行います。なかやんは64GB(64000MB)を指定しました。

ここで、問題発生です。
作成したパーティションをインストール先に指定しましたが、謎のエラーで進みません。

選択したパーティション上に Windows XP をインストールするには、次のディスクにいくつかのスタートアップ ファイル を書き込む必要があります。
61052 MB ディスク 0 Id 0 (パス0 atapi 上) [MBR]
このディスクには Windows XP 互換パーティションがありません。
エラーの発生時はHDDとSSD、両方のストレージをSATAケーブルでPCに接続した状態でしたが、片方(SSD)を取り外すと正常にインストールができました。


インストール完了しました。ここまでは良い感じですね。
パーティションの調整
ここで、「ディスクの管理」を使用しパーティションの調整を行います。

次にインストールするWindows VistaやWindows 7 など のパーティションを、予め作成します(Windows 10の分まで一気に作成しても良いですが、とりあえず7までにしておきます)

今回はWindows Vistaに128GB、Windows 7に256GBを割り当てました。
NTFS、クイックフォーマット、プライマリ パーティションでの作成で問題ありません。ボリュームラベルは、分からなくならないよう WinVistaやWin7のように指定しましょう。
Windows Vista
次はWindows Vista をインストールします。


一番重要なのは「インストール先パーティション」の選択です。先ほど作成した、Windows Vista 用のパーティションを選択します。

誤ってWindows XP のインストールされているパーティションを選択しないよう、確認し進めます。

Windows 7
Windows 7 も、Vista と同様にセットアップを進めていきます。


パーティションの調整②
Windows 7のディスクの管理から、続けてパーティションを作成します。

MBR 形式のため、プライマリパーティションは最大4つまでしか作成できません。拡張パーティションで作成します。

Windows 8.1用には128GB、Windows 10用には256GBを割り当て、残りは適当なボリュームを作成しました(複数のOSとデータを共有する際に、1つ余分なボリュームを作っておくと便利です)
Windows 8.1
次はWindows 8.1 のインストールです。今回は無料の180日評価版を使用しました(大昔に評価版のインストーラーをダウンロードした気が... 今はもうダウンロードページが無いようです。MS クオリティなので直リンを探せば入手できるかもしれません)

Vistaや7の時と同様に、インストール先のパーティションは良く確認し進めてください。

Windows 8.1、確かにスタートメニューなどは使いにくいですが、かなり軽快に動作した記憶があり 個人的には好きなOSの1つ です。
Windows 10
HDDにインストールする最後のOSです。

インストール先のパーティションは慎重に選択しましょう。ここまでやった作業が水の泡に... なんてなったら大変です...。


インストール完了しました。やはりWindows 8.1 と比べるとかなりインストールは遅くなっています(HDDでは厳しい感じです)昔のWindows 10は不具合もありましたが、サクサクだった記憶が... アップデートで重くなるのは仕方がないのかもしれません。
パーティションの調整③
Windows インストール時に外したSSDを付け忘れていたので ここでパーティション調整を行います。Windows 11 はSSDの全ての領域にインストールする予定ですが、ボリューム名などを指定しておかないと心配です。

Win11 という名前で作成しました。
Windows 11
Windows 11 は以前 このマシンにインストールしアクティベーションを実施しているため キー無しで入るはずです。通常版を入れてみます。
このPCは、Ivy Bridge世代のマシンですので レジストリ変更など加工しなければ Windows 11 はインストールできません。

インストール先パーティションの選択は、慎重に行います。


インストール完了しました。
再起動を実施し、ブートメニューを確認してみました。

キタ――(゚∀゚)――!!
Windows XP〜11まで、しっかり共存できていますね。Windows XPが「以前のバージョンのWindows」となっているのは仕様です(ブートローラーが異なるため)。後でユーザー自身が修正する必要があります(コマンドプロンプトから変更する必要があります)
ドライバインストールとその他セットアップ
大変なのはここからです。次は「ドライバインストール」と「OSのアップデート」を行います。
ドライバは、PCにあったものをダウンロードし、それぞれのOSに 一つずつドライバをダウンロード&インストールします(これがかなり大変です)
また、必要に応じてサービスパックなどをインストールします。
Windows Update について、Windows Vista 以前はSHA-2 に対応していないため 2024年時点で全く機能しません。Microsoft Update Catalog から一つ一つファイルをダウンロードしインストールする必要があります。ここでは詳しく書きませんが、非公式のアップデートツールなどを使うのも良いかもしれません(自己責任でお願いします)。やはり、セキュリティ的にも出来るだけ最新の状態にしておきたいです。
また、アクティベーションなども行う必要があります。Windows Vista 以前はSHA-2に対応していないため、オンラインでのアクティベートが出来ません。電話認証でアクティベーションを実施します。(これは結構大変です)
今までも電話認証は大変でしたが、最近は「プッシュタイプ」から「音声認識タイプ」に変更になり、さらに大変になりました。



Windows 7は、MSからisoファイルをダウンロードした時期によっても異なりますが、標準の状態ではSHA-2 に対応させるためのアップデートが適用されていなく、Windows Update やアクティベーションができないことがあります。なかやんの環境では「KB4474419」と「KB4490628」のインストール、また「Windows Update エージェント」を最新の状態にすることで解決しました。
↓↓詳しくは次の記事をご確認ください↓↓
ブートローダーの調整
最後に、少しだけブートローダーの調整を行いました。

特に通常利用では問題ありませんが、Windows XP が「以前のバージョンの Windows」と記載されていたり、OSの順序もバラバラです。これは少し気になりますね。
表示名やブート順序はGUI上から変更することができず、Windows Vista 以降のコマンドプロンプト上から「bcdedit」コマンドを使用し調整します。
名称変更
↓↓Microsoft 公式のガイド↓↓
①管理者権限のコマンドプロンプト上で「bcdedit」と入力します。

何やら長い文字列が表示されました。この文字列を参考に、調整を行います。
「Windows レガシ OS ローダー」と記載されている章を確認しましょう。

色々コードが書いてありますが、descriptionの値が「以前のバージョンの Windows」になっています(個々の値を変更すると、表示名も変わります)。値を編集するためには、identifier(識別子)を覚えておく必要があります。今回の場合は、「{ntldr}」でした。
②次は変更を行います。

「bcdedit /set [識別子] description "指定する名前"」のようにコマンドを実行します。[識別子]に関しては、先ほど確認したidentifierの値を入力してください。指定する名前は、お好みの物を入力します(なかやんは「bcdedit /set {ntldr} description "Windows XP"」と入力しました。)
「操作は正常に完了しました」のメッセージが表示されたらOKです。再起動し変更が適用されているか確認します。
OS順序の変更
↓↓Microsoft 公式のガイド↓↓
次はOS順序の入れ替えです。Microsoft の公式サイトには色々難しそうなことが書いてありますが、簡単に入れ替えが可能です。
上から表示させたい順に、
bcdedit /displayorder [①識別子] [②識別子] [③識別子]
と入力しEnter を押すだけです。
識別子は、名称変更の時と同様に、identifierの値を確認します。

これで「以前のバージョンのWindows」の修正とOSの順序を調整完了です。

最後に
という事でやっと終了しました。かかった時間は「OSのインストール」「ドライバのインストール」「サービスパックの適用」「電話認証とオンライン認証」で約8時間ほどです。Ivy Bridge世代のi5 搭載のPCなので、Windows XPやVista、7 はかなり快適に動作します。Windows 11 も、Microsoft 的には非対応と言っていますが、快適に動作しています。
大昔はブートローダーを書き換えをコマンドで実施したり、マルチブート用のソフトを使用したり記憶が有ります。確かにここまでOSの種類が多くなるとマルチブート支援のソフトで管理しても良いですね。しかしOS標準のGUIでも十分に使用出来ます。複数環境のOSを試してみたい、昔のOS色々試してみたい方はやってみてはいかがでしょうか。
古いOSを試す、インターネットに接続する際は セキュリティリスクを伴うことを忘れずに!
では、おやすみなさいzzz