Mac OS X + WIndows XP + Linux (Fedora 8)のトリプルブート環境に移行

Boot Campを使うとデュアルブート環境は比較的簡単に構築できますが、3種類以上のOSを同時にインストールする「トリプルブート」はサポートされていません。しかしサードパーティ製のブートローダ「rEFIt」というものが開発されており、これを使えばトリプルブート以上の環境を作ることが可能です。しかも最近はGUIインストーラも整備されているので、コマンド入力は(ほとんど)必要なくなっているようです。

既にBoot Campを使ってMac OS XWindows XPデュアルブート環境を構築してあるので、そこからトリプルブート環境へ移行してみました。
前提として、Mac環境は当然インストール済み、Windows XP環境はBoot Campを使って普通にインストールしてあり、その環境をそのまま維持するものとします(再インストールとかは面倒なのでしない)。なお、Vistaにはこの手順が適用できるかは分かりません(私はVistaの起動システムをよく知らないので…。)
作業のポイントは

の3点ですかね。
なお、下記手順は必ずうまくいく保証は全くないので、真似して実施する方は自己責任でお願いします。

手順1 Linux用のパーティションを区切る

私の環境ではBoot Campインストール時に「Mac領域(HFS+) 約180GB」+「Windows領域(NTFS) 約20GB」と分割していましたが、Windows用の領域は手を付けずにおき、Mac領域の一部をLinux用に切り直します。
パーティションの切り直しには「ディスクユーティリティ」を使用します。HDDの「パーティション」タブを開き、Mac領域を選択した状態で「+」をクリックするとパーティションが二つに分割されます。新しいパーティションの方をLinux用にしますので、サイズを適当に小さくします。私は12GBにしました。なお、フォーマットはとりあえず何でも(HFS+で)OKです。これで「適用」をクリックすると、Mac領域が縮小され、新たにLinux用の領域が確保されます。なお縮小中は一切操作できない状態が数分間続きます。

この時点でパーティション構成が変わりますので、一時的にWindowsは起動できなくなります(起動しようとしてもブルースクリーンになる)。boot.iniを編集する必要があるのですが、MacからはNTFSのファイルは変更できないため、Linuxをインストールしてからの作業となります。

手順2 Linux(Fedora 8 x86_64)のインストー

分割した領域にLinuxをインストールします。今回はFedora 8 x86_64にしました。NTFS上のファイルを標準で編集できるので、boot.ini編集が簡単なのが利点です。
DVDのisoをダウンロードして焼き、CDドライブに入れて、「C」キーを押しながらMacを起動すると、無事インストーラが起動。
インストール先のパーティションは必ず手動設定を選ぶ必要があります。そのとき、先ほどの12GBのパーティション(/dev/sda3 に見える)を編集しマウントポイントを「/」に設定し、ext3でフォーマットさせます。それ以外は触ってはいけません。swapパーティションは作らずにおきます(警告が出るが無視する)。またGRUBは/dev/sda3上にインストールしておきます。
あとは適当にパッケージを選んでインストール。(なんでFedoraemacsをデフォルトで入れてくれないのだろうか。)

ファイルコピーが完了すると再起動しますが、このときLinux(というかGRUB)はまだ起動できないため、Mac OS Xが起動します。

手順3 rEFItのインストー

トリプルブートに対応したブートローダ「rEFIt」をインストールします。これはインストールした指定したパーティションから起動すると、接続されているディスクを一覧表示し、どこから起動するかをグラフィカルに選択できるというものです。MacパーティションにインストールできるGUIインストーラがつき、インストールは簡単に行えます。またアンインストールも比較的簡単です。
http://refit.sourceforge.net/ から現在の最新版「rEFIt-0.11.dmg」をダウンロードし、rEFIt.mpkgをダブルクリック。あとは普通にインストール。
そして再起動すると、rEFItの画面が現れます。

なおrEFItが起動しない場合は、ターミナルから

# cd /efi/refit
# ./enable.sh

でeEFItが有効になるようです。

手順4 Linuxのブート

まずはLinuxをブートしましょう。先ほどのインストール作業の続きを行い、ログインできるところまで作業を進めます。

手順5 Windowsのboot.iniを編集

Linux上からWindowsの領域にあるboot.iniを編集し、パーティション構成の変更に対応させます。

% su -
Password: *******
# mount /dev/sda4 /mnt
# cd /mnt
# emacs boot.ini  (入ってないときはviとかで)

Partition(3) になっているところを、Partition(4)に変更すればOKです。

手順6  Windowsを起動してみる

再起動し、rEFItでWindowsを選択したときに、ちゃんと起動することを確認できれば作業完了です。