Me,XP,Vineのトリプルブート 失敗編

Last-modified: 2014-08-16 (土) 12:41:50 (1987d)

windows tips
linux tips

Me,XP,Vineのトリプルブート 失敗編

僕の所有している1スピンドルノートFMV-645MC6C/WのOS、今までWindowsMeを使用していたのですが、2005年正月の空き時間を利用してWindowsMeとWindowsXPとVineLinux3.1のトリプルブートに挑戦してみました。

おおよそのスペックは以下の通り。

  • CPU:セレロン450MHz
  • メモリ:64+128MB
  • HDD:20GB
  • 画面解像度:800x600
  • 光学ドライブなし、外部起動サポート外。
  • FDDなし、外部起動できるのかもしれませんが専用FDDもってない。
  • LANなし
  • CardBus?:1スロット

と、かなり過酷な状況です。後々のメンテナンスも恐ろしく大変な作業になるのは明白ですが、なんとかしてみました。

パーティションの配分

最も使いやすい設計として、以下のように計画しました。

  • 基本領域1(hda1)-FAT32(WindowsMe用):約3GB
  • 基本領域2(hda2)-NTFS(WindowsXP用):約3GB
  • 拡張領域1(hda5)-ext2(Linuxブート用):約50MB
  • 拡張領域2(hda6)-ext3(Linux用):約2.5GB
  • 拡張領域3(hda7)-LinuxSWAP:約400MB
  • 基本領域3(hda3)-FAT32(データ保存用):約10GB

読み込み速度を考えるとパーティションの並び順を変更した方がいい点もありますが、使用上のわかりやすさも考えてこのようにしました。

ちなみに、WindowsMeとWindowsXP用のProgramFiles?は基本領域3のディスクに作るつもりでいます。なんとかプログラムの共有もできればと思っています。

ブートローダ(ブートセレクタ)

GRUBが標準搭載のLinuxならGRUBで決まりなんですが、VineLinuxは標準ではLiloです。候補としては、NTLDRかLiloか、後からGRUBを入れるか、その他フリーのブートローダを使うか。いろいろ考えられますが、とりあえずVineLinux標準のLiloを使うことにしました。

1スピンドルへのOSのインストール

ここが最大の難関です。外部起動がサポート外、LANなしのPCにどうやってOSをインストールするか。WindowsMeは他マシンでのインストールで動作させている経験があるのでそれはいいとして、はたしてXPやLinuxがそれで動くものなのか。XPはインストールCD内のi386フォルダをハードディスクにコピーしてインストールを実行させる手段もあるのですが、マルチブートでその方法が使えるものなのか。アクティベーションはできるのか。わからないことだらけですが、悩むよりとりあえずやってみることにしました。

インストール手順

まず、WindowsMeをインストールします。インストール作業はCD起動のできる他マシンで行いました。

ハードディスクを接続し、CDを挿入し、CD起動させます。一旦インストーラを終了させ、コマンドプロンプトからfdiskを起動させ、3GBのWindowsMe用のパーティションだけをハードディスクの先頭に作りました。PCを再起動させ、再度インストーラを起動させ、その領域にWindowsMeをインストールさせます。滞りなくインストールが終了し、WindowsMeの起動を確認できたら、次はWindowsXPのインストールを行います。

とりあえず他マシンを使用して普通にインストールしてみることにしました。WindowsXPのインストールディスクを入れ起動させます。インストーラが起動したら、そのインストーラ内でパーティションの設定ができるので、約3GBのNTFS領域を作り、そこにWindowsXPをインストールします。

インストール後に気づいたのですが、ここで予定外のことがおこりました。WindowsXPのインストーラにパーティションを作らせたところ、基本領域ではなく拡張領域を作りやがったのです。そういうことは作る前に知らせてほしい。でも使用上問題なさそうなのでそのままいくことにしました。WindowsXPのドライブはhda5となります。

WindowsXPの起動を確認後、VineLinuxのインストールに進みます。このOSも、別マシンでそのままインストールしてみることにしました。

CDからインストーラを起動し、パーティションを設定し、そのままインストール。ビデオカードの設定のところは、自動検出したドライバを使用せず無難にVESAを選択。ブートローダはこのOSについてるLiloを使うので、LiloをMBRにインストール。ブート項目は、hda1をWindowsMe、hda5をWindowsXP、hda7をVineLinuxとしました。

何故かVineLinuxのインストールは1度ハングアップしたのですが*1、再試行して難なく完了。開いているデータ領域をFAT32でフォーマットし、各OSの共有ドライブとしました。

最終的にハードディスクのパーティションは以下のようになりました。

  • 基本領域1(hda1)-FAT32(WindowsMe用):2.93GB
  • 拡張領域1(hda5)-NTFS(WindowsXP用):2.93GB
  • 拡張領域2(hda6)-ext2(Linuxブート用):47MB
  • 拡張領域3(hda7)-ext3(Linux用):2.63GB
  • 拡張領域4(hda8)-LinuxSWAP:251MB
  • 拡張領域5(hda9)-FAT32(データ保存用):9.84GB

基本領域が1つしか作れなかったのが少々残念ですが、おおよそ目標通りになりました。

hda9にノート用の各種デバイスドライバのファイルをコピーし、いよいよ実機での動作となります。

動作確認

ハードディスクを実機へ接続し、いよいよ動作確認です。

起動させると、VineLinuxのLiloが立ち上がり、WindowsMe,WindowsXP,VineLinuxの起動メニューが現れますが、ここで予定外の挙動がおこりました。

WindowsMeを選択すると、すぐにMeを読み込むわけではなく、NTLDRが起動し、ここからさらにWindowsMeとWindowsXPの選択に移ります。Meは問題なく起動しましたが、XPを選択するとブルースクリーンで固まります。メッセージは英語ですが、なんか「MBRがおかしいよ。ウイルスじゃね?」って感じのメッセージです。

LiloでVineLinuxを選択するとVineLinuxが起動します。

LiloでWindowsXPを選択すると、黒画面で固まります。

要するに、失敗してしまいました。

やはりWindowsXPがクセモノでした。しかし方法がないわけではないと思うので、再度挑戦してみることにします。

懲りずに再挑戦

Me,XP,Vineのトリプルブート



*1 emacs関係のインストール中にコケたのでemacsはインストールしないことにしました。必要ならaptで入れるつもりです