パソコン実習室
GRUB によるトリプルブートの実験
  next ≫

T.目標と実験環境


T.1.前説

 1 台のハードディスクに複数の Windows をインストールすることは可能で、 後からインストールする Windows のインストーラが C:\ (既存 Windows のドライブ) にある boot.ini ファイルを書き換えてマルチブート (OS の選択) を可能にする。
▼ ただし、後からインストールする Windows のインストーラは、C:\ にある下記ファイルを自身のファイルで上書きして
   しまうので注意を要する。
ntldr
NTDETECT.COM
bootfont.bin
▼ Windows 2000 以前の ntldr では、Windows XP 以降の OS を起動できない。
   もし、Windows XP の後から Windows 2000 をインストールする場合は、上書きされるファイルをコピー等で退避して
   おき、Windows 2000 をインストール後に書き変わったファイルを (Windows 2000 側から) 復元する措置が必要。
   (これら 3 つのファイルは、インストール CD の i386 フォルダにもある)

 また、Linux のブートローダとして多く使用されている grub も複数の OS を選択・起動することが可能で、 特にハードディスクのパーティション テーブルに記述されているアクティブ フラグの制約を受けない。
※ grub はアクティブ フラグの値が "起動不可(0x00)" であっても起動可能。
 さらに grub には、パーティション テーブルのデータを一部操作できるコマンドも備わっている。

 これらを考え併せると、1 台のハードディスクに複数の Windows と Linux をインストールして、トリプルブートにすることは可能だろう。
 ならば、それぞれの Windows を C ドライブとして起動し、他 OS がインストールされているパーティションをドライブとして認識させないことは可能だろうか。



T.2.目標

 ここでは 3 種類の OS (Windows XP, Windows 2000 server, Red Hat Linux ES3) を使って、トリプルブートの環境を作成する。
 そして次の項目をその目標に据える。
  • 1 台のハードディスクに 2 種類の Windows (Windows XP, Windows 2000 server) と Linux をインストールする。
  • インストールは、Windows XP, Windows 2000 server, Linux ES3 の順に行う。
  • OS のブートローダには次の理由から grub を使う。
  • Windows (XP, 2000 server) は、それぞれを C ドライブとして起動可能にする。
  • それぞれの OS は他の OS に干渉しない。 干渉されない。
  • 他 OS がインストール済みのパーティションをドライブとして認識しない。
※ 実験用 Linux には Red Hat Linux ES3 を使用したが、Linux 7 や Linux 9 でもインストー
   ル時の様子が変わるだけで問題はない(と思う)。


T.3.実験環境

T.3.1.ハードディスク容量

 3つの OS をインストールするにはハードディスク容量はそれなりに必要だが、実際に運用するわけではないので 120GB のハードディスクを 1 台使うことにした。

 もし、トリプルブート環境のまま継続使用することを考えているなら、各 OS で必要としている容量を考慮してそれなりの容量のハードディスクが必要になる。

【 137 GB の壁に注意 】
 Windows XP および 2000 server のインストール (リカバリ) 用 CD/DVD は、製造時期によってサービスパックの適用状況が異なり、その状況によってハードディスク容量の認識に限界 (インストーラによって表示される数値は 132 〜 137 GB) がある。

 認識可能な容量を超えたハードディスクでもインストール作業は開始できるが、認識可能な範囲を超えた領域にパーティションを作成 (領域確保) しようとすると失敗する。

 用意したハードディスクの容量を認識するかどうかの確認は、ハードディスクの容量を確認してからインストール作業を開始し、インストール先パーティションの選択 (パーティション サイズ入力) 時に表示されるディスク容量をチェックする。
 セットしたハードディスクの容量と違っていたら正常に認識できていないので、ハードディスクの容量を 120 GB 程度に減らすしかない。  作業開始に先立って Windows XP, 2000 server 両方の確認が必要だ。

< 137 GB の壁を回避 >
 137 GB の壁がある Windows XP, 2000 でも、最新の Service Pack を適用すれば 137 GB 以上のハードディスクを認識できるようになる。
少々面倒だが、この実態を利用すれば 137 GB を超える容量のハードディスクに入れることは可能だ。
回避方法の詳細は、Y.参考 - 137 GB の壁を回避する を参照。


T.3.2.dskprobe

 以降では、MBR (パーティション テーブル) の確認と書き換えに Windows オプションの dskprobe.exe を使う。
※ MBR (パーティション テーブル) の詳細は、HD の構造とパーティションの W.MBR (Master Boot Recode) を参照。

 dskprobe.exe は Windows XP 等の Support Tools として用意されていて、簡単にインストールできる。
インストールは以下のいずれかの方法で行う。
  • C:\SUPPORT\TOOLS フォルダにある SETUP.EXE をダブルクリックする。
  • 再インストール用 CD 等の \SUPPORT\TOOLS フォルダにある SETUP.EXE をダブルクリックする。
  • Microsoft のサイトから Windows サポートツール をダウンロードして実行する。
サポートツールを入手できない時は、dskprobe.exe のみを こちら からダウンロード・展開して適当な場所に保存する。


※ ハードディスクを 2 台使った MBR の編集を行わずにトリプル ブートの環境を実現できる方法がある。
   137 GB 以上のハードディスクを認識しないバージョン向けの方法 (Y.4.ハードディスク 2 台による回避手順
   参照) だが、それ以外にも使える手段だ。 MBR の編集を避けたい向きにはお勧めする。





  [[ GRUB によるトリプルブートの実験 ]] next ≫