12

25

2007

OSX/Win/Linuxトリプルブートシステムの構築(その1)

Intel Macで OSX, Windows, Linux のトリプルブートを行うには

 

 Leopard で正式導入された ”Boot Camp Assistant” を使って Intel Mac 上で Mac OS X と Windows XP/Vista とのデュアルブートシステムを構築している方も多いのではないでしょうか.デュアルブートシステムを構築するのは比較的簡単なのですが、更にもう一つ OS をインストールしてトリプルブートシステムを構築するとなると、技術的な制約からかなり面倒な事になります.
 

 今回紹介するのは、Mac OS X と Windows XP 、Ubuntu Linux 7.1 のトリプルブートシステムを構築する方法です.Mac OS X 自体 UNIX 系の OSなので、敢えて同じ UNIX 系のLinux を動かすという必要性があるかどうかはちょと疑問ですが、単に技術的な興味からトリプルブートシステムに挑戦してみました.実用的な見地ということでは VMWareやPallarels 等のVMを使ってゲストOSとして Linux を動かす方が良いでしょう.
 

 尚、今回は今流行の Ubuntu Linux 7.1を使ってみましたが、他の Linux ディストリビューションでも同じ筈です.まだやっていませんがi386用のSolaris なども同じようにインストールできるのではないでしょうか.
 

 事前準備

 

 トリプルブートシステムを構築するには、事前にパーティション構成を綿密に設計しておく必要があります.以前の記事で紹介しましたが、 ”Boot Camp Assistant” はあまりにも制約が多くて使い物になりませんので、今回も ”Boot Camp Assistant” を使わずに 一般的な “Disk Utility” を用いてハードディスクのパーティショニングを行うことにします. ”Boot Camp Assistant” を使わずに Windows をインストール方法については 『MacでWin - BootCamp (その3〜5)』を参照下さい.
 

 まず、Intel Mac で一般的に使われている GUID パーティション形式(GPT) で レガシーOS(BIOS ベースのマシンで動かすことを前提にしているOS : Windows や 殆どのLinux ディストリビューションが該当)を動かす場合の制約(『MacでWin - BootCamp (その1~2)』を参照下さい)を整理してみましょう.
 

   ・ GPT の Protective MBR の仕組みから、MBR形式としてアクセス可能なパーティションは、
    先頭から4つまでのパーティションに限られる
 
   ・Windows(XP/Vista)をインストールできるパーティションの位置は限られている
 
   ・Linux のブートローダー(LILO, GRUB) はMBRに書き込むか、ブートパーティション (/bootなど)の
    最初のセクターに書き込む必要がある.この場合ブートパーティションは MBR形式としてアクセス可能な
    パーティションに置かなければならない.
  
 GPT の場合、先頭のパーティションは”EFI System Partition” として予約されていて使えない(実際にはこのパーティションはMac OS X では使われておらず、中身は空だそうです.この辺のところは ”Myths and Facts About Intel Macs” に詳しい記事が書かれています )ので、第2〜4パーティションに上手く割り振らないといけません.
 

 まず、一番制約の厳しいWindows 用のパーティションの位置を決めます.必然的に第4パーティションということになります.Mac OS X はどこのパーティションに置いても良いのですが、メインOS ですからとりあえず第2パーティションに置くことにします.Linux のブートローダー用のパーティションは第3パーティションということになります.Mac OS Xをもっと後ろに持って行けば、第2パーティションも他の レガシーOS 用に割り振る事が可能(Quad boot)になります.
 

 大まかなパーティション構成が決まったので、”Disk Utility” を用いてハードディスクをフォーマットします.今回実験に用いたハードディスクはMacBook用に用意した100GB の2.5inch ディスクなので、パーティションをあまり細かく分割することは得策ではありません.できれば Linux 用のパーティションを “/boot”, “swap”, “/”, “/home” などのように分けたいところですが、今回は ルート (/) と swap だけの構成にしました.
 

 最終的なパーティション構成は次のようになりました.
 
   #1 : “EFI System Partition” (自動的に作成される)
   #2 : “Leopard” HFS+  約24GB
   #3 : “Linux Root /“ HFS+ 約12GB(後で ext3 形式にフォーマットし直す)
   #4 : “Windows XP” FAT32 約16GB(後で NTFS 形式にフォーマットし直す)
   #5 : “Linux swap” HFS+ 約1GB (後で Linux swap 形式にフォーマットし直す)
   #6 : “Home” HFS+ 約40GB
 
 “Disk Utility”では Linuxのファイルシステムは扱えないので、とりあえず HFS+ でパーティションを作成し、Linux やWindows のインストール時にパーティションを再度目的の形式にフォーマットし直すことにします.ディスクのパーティションタイプは ”GUID(GPT)” とします.MBR形式でもできないこともないのですが、色々と問題があるため無難なところで ”GUID(GPT)” を選びました.
 

 

Disk Utility
Disk Utility でパーティションを作成

 

 

ブートローダー(OS セレクタ)の選定

 

 トリプルブートシステムを構築する場合、各OSをどのようにして切り替えるかが問題になります.Mac OS X と Windows (XP/Vista)のデュアルブートであれば、”Startup Disk” とWindows側の専用ユーティリティーの利用によって簡単に起動システムを切り替えることができます.また、起動時に”Option” キーを押すことで ファームウェアレベルの OS セレクタを利用することも可能です.しかしながら、これらの方法では Linux に直接対応できません.一旦 Windows のブートローダーを起動してから、 Linux を呼び出すという間接的な起動方法も可能なのですが、できれば直接Linux を起動したいところです.
 

 このような用途にうってつけのファームウェアレベルのOS セレクタがフリーソフトウェアとして出まわっています.Christoph Pfisterer さんが作成した rEFIt というEFI システム用のブートローダーで、マシン起動時に利用可能なOSをGUI ベースで選べるようになります.Mac起動時に ”Option” キーを押した場合に出てくるOSセレクタをもう少し格好良く便利にしたような感じでしょうか.Windows系のツールでは”BootMagic” のようなものがありますが、それと同様な機能を果たすものだと思って下さい.rEFIt に関するホームページ から予めダウンロードしておいて、使用方法等を把握しておいて下さい.
 

Triple-boot System
OSX/WinXP/Linuxトリプルブートシステム

 
 

 ページが長くなりましたので、続きは ”その2” で紹介します.

 

ブックマークサービスに追加: これらのアイコンはソーシャルブックマークサービスへこの記事を追加するためのものです.
  • yahooJapan
  • Hatena
  • livedoor
  • nifty
  • Buzzurl
  • TechnoratiJapan
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • TwitThis
  • e-mail
    はてな でこの記事を登録している人数     Livedoorでこの記事を登録している人数     Buzzurlブックマーク Buzzurlでこの記事を登録している人数     テクノラティ

One Response to “ OSX/Win/Linuxトリプルブートシステムの構築(その1)”

  1. Gravatar
    intel iMacをいじる on 1 18th, 2008 at 1:23 AM   

    トリプルブート…

    Documents and Settingsを別パーティションにしたWindowsとデュアルブートしていたが、VMwareやparallelsが複数ドライブを認識しないようなのでインストール……

   
Trackback URL :

Leave a Reply

Available XHTML tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>