Linuxmaniaトップ活用ガイドGRUB二段構えでLinuxをマルチブートする

Linuxmania:活用ガイド


■ Linux をマルチブートする方法


2つの Linux システム をクリーンインストールし、
ブートローダ「GRUB」を利用してデュアルブート設定する手順を紹介します。

以下では、Fedora 10 と CentOS 5.2 を使用しますが、
他のバージョンでもほぼ同じ構成でデュアルブート設定することができます。


■ 概要:
Linuxの起動をGRUB二段構えにします。
一段目のGRUBで 複数のOS(例では Fedora10 と CentOS 5.2) を起動し分けます。
二段目のGRUBで それぞれのOS の詳細な起動オプション等を設定します。
個々のOSでカーネルの更新が行われる際は、二段目のGRUBの設定が変更されます。
二段目のGRUB設定は互いに独立で、カーネル更新/OS再インスト時に他方へ影響しません。


■ 起動手順のイメージ:

   起動→[GRUB]一段目┬→[GRUB二段目(Fedora10)]→ Fedora10起動
       (OSを選択) └→[GRUB二段目(CentOS5.2)]→ CentOS5.2起動


■ パーティション構成:
 /dev/sda1 : 一段目GRUBパーティション
 /dev/sda2 : 二段目GRUBパーティション(Fedora10 /boot)
 /dev/sda3 : 二段目GRUBパーティション(CentOS5.2 /boot)
 /dev/sda4 : 拡張パーティション (sda5 と sda6 を収納)
  /dev/sda5 : Fedora10 LVM 物理ボリューム
  /dev/sda6 : CentOS5.2 LVM 物理ボリューム


※ 以前紹介した方法 (「Fedora と Ubuntu をデュアルブートする方法」) との相違点


以前紹介した Ubuntu と Fedora のデュアルブート方法では、
Ubuntu のブートローダから Fedora をブートしております。


■ 以前の起動手順のイメージ:

   起動→[GRUB(Ubuntu)] ┬→Ubuntu 8.04 起動
                └→[GRUB(Fedora)]→ Fedora 9 起動


■ 今回の起動手順のイメージ:

   起動→[GRUB]一段目┬→[GRUB二段目(Fedora10)]→ Fedora10起動
       (OSを選択) └→[GRUB二段目(CentOS5.2)]→ CentOS5.2起動


今回紹介する方法では、複数のOSの領域がきれいに分割されます。
それぞれを更新・再インストールしても他方に影響が出ないメリットがあります。

※また、今回の記事ではふれませんでしたが応用でトリプルブートも可能です



手順


以下のものを用意します。

(1) Fedora 10 インストールディスク
(2) CentOS 5.2 インストールディスク



1. レスキューモードでパーティションを作成


1.1. Fedora 10 インストールディスクを起動し、レスキューモードで起動します。

言語は「English」、キーボードは「jp106」を選択します。
ネットワーク設定は不要です。
[Rescue] ダイアログでは「Skip」を選択します。


1.2. fdisk コマンドを実行し、HDD 上にパーティションを作成します。


$ fdisk /dev/sda


p コマンドを実行し、既存のパーティションを表示させます。
d コマンドを実行し、既存のパーティションを全て削除します。

次に、n コマンドを実行し、GRUB 用のパーティションを作成します。


[n コマンド実行例]
 Command (m for help): n
  Command action
     e   extended
     p   primary partition (1-4)
  p (と入力)
 Partition number (1-4): 1 (と入力)
 First cylinder (1-60801, default 1): (Enter を入力)
 Last cylinder or +size or +sizeM or +sizeK (1-60801, default 60801): +200M

 Command (m for help) :p (と入力)
 Disk /dev/sda 500.1GB, 500106780160 bytes
  255 heads, 63 sectors/track, 60801 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Disk identifier: 0x00008778

     Device Boot      Start    End    Blocks    Id  System
  /dev/sda1                1     25    200781    83  Linux


同様にして、あと2つ /dev/sda2 と /dev/sda3 を作成します。

その後、w コマンドを実行し、fdisk を終了します。


1.3. reboot コマンドを実行し、PC を再起動します。



2. Fedora 10 のインストール


2.1. Fedora 10 のインストールを起動します。


2.2. パーティション設定で [カスタムレイアウトを作成します] を選びます。


2.3. Fedora 10 の起動パーティションを指定します。


「/dev/sda2」行をクリックして反転させ、[編集] を押します。
[マウントポイント] に「/boot」と入力し、[フォーマットする] を選択し [OK] を押します。


スクリーンショット


※/dev/sda1 と /dev/sda3 は後で利用しますので、今は放置しておきます。


2.4. Fedora 10 と CentOS 5.2 用の LVM PV パーティションを作成します。


まず、Fedora 10 の LVM PV パーティションを作成します。
[新規] を押し、[ファイルシステムタイプ] で [LVM] を選択します。
[サイズ] に 「230000」と指定して [OK] を押します。
/dev/sda5 が Fedora 10 の LVM PV パーティションになります。


スクリーンショット


次に、CentOS 5.2 の LVM PV パーティションを作成します。
[新規] を押し、[ファイルシステムタイプ] で [LVM] を選択します。
[追加容量オプション] に 「最大許容量まで使用」を選択して [OK] を押します。
/dev/sda6 が CentOS 5.2 の LVM PV パーティションになります。


スクリーンショット


2.5. Fedora 10 用の LVM ボリュームグループ と LVM 論理ボリュームを作成します。


まず、「/dev/sda5」行をクリックして反転させ、[LVM] を押します。
[ボリュームグループ名] に 「Fedora10」と入力し、
[使用する物理ボリューム] は 「sda5」だけチェックされている状態にします。


スクリーンショット


次に、swap 論理ボリュームを追加します。
[追加] ボタンを押し、[ファイルシステムタイプ] に「swap」を選択します。
[論理ボリューム名] は「swap」でよいでしょう。
[サイズ] に メモリの2倍の値を指定し、[OK] ボタンを押します。


スクリーンショット


さらに、ルート論理ボリュームを追加します。
[追加] ボタンを押し、[マウントポイント] で「/」を指定します。
[論理ボリューム名] は「root」でよいでしょう。
[サイズ] の値はそのままで、[OK] ボタンを押します。


スクリーンショット


スクリーンショット


2.6. パーティション設定を確認します。


・/dev/sda2 が /boot としてフォーマットされる。
・/dev/sda5 が Fedora10 として設定され、フォーマットされる。
・LVMボリュームグループ Fedora10 内の root と swap が フォーマットされる。
・/dev/sda6 には名前はないが、フォーマットされる。


2.7. パーティション作成を実行します。


[次へ] を選択します。 [フォーマットの警告] が出ますが、そのまま実行します。
[変更をディスクに書き込む] を押します。


2.8. 「ブートローダーを /dev/sda にインストールする」と表示されますので、


[デバイスの変更] を押し、「First sector of boot partition - /dev/sda2」を選択します。
[次へ] を押します。


2.9. インストールを続行し、インストールが終わったら再起動します。



3. 一段目 GRUB パーティションのインストール


3.1. 再度 Fedora 10 インストールディスクを挿入し、レスキューモードで起動します。


[Rescue] ダイアログで今度は「Continue」を選択します。


3.2. 一段目の GRUB パーティションをフォーマットします。


# mkfs -t ext3 /dev/sda1


3.3. 一段目の GRUB パーティションに GRUB 関係のファイルをコピーします。


# mount /dev/sda1 /mnt/sysimage/mnt
# cd /mnt/sysimage/mnt
# cp -aR ../boot/grub .


3.4. 一段目の GRUB パーティション用の GRUB 設定ファイルを作成します。


# cd grub
# cp grub.conf grub.conf.org
# nano grub.conf


以下の内容のファイルを作成し、保存します。(Ctrl+O → Ctrl+X)


#boot=/dev/sda1
default=0
timeout=-1
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora 10
    root (hd0,1)
    chainloader +1
title CentOS 5.2
    root (hd0,2)
    chainloader +1


3.5. 一段目の GRUB パーティション用に GRUB をインストールします。


# grub --config-file=./grub.conf
(少し時間がかかります)
grub> root (hd0,0)
grub> setup (hd0)
grub> quit


3.6. Fedora 10 インストールディスクを取り出し、再起動します。



4. Fedora 10 の初期設定


4.1. GRUB メニューが出ますので、「Fedora 10」を選択します。


4.2. Fedora 10 が起動します。


4.3. Fedora 10 の初期設定を行います。


4.4. 一般ユーザでログインし、/boot/grub/grub.conf を編集します。


$ su -c 'nano /boot/grub/grub.conf'
(管理者パスワードの入力が必要です)


以下の行を編集し、保存します。


boot=/dev/sda2


※行頭の#を削除し、boot行を有効にします。


4.5. CentOS 5.2 のインストールディスクを挿入し、PC を再起動します。



5. CentOS 5.2 のインストール


5.1. CentOS 5.2 のインストールを起動します。


5.2. パーティション設定で [カスタムレイアウトを作成します]を選びます。


5.3. CentOS 5.2 の起動パーティションを指定します。


「/dev/sda3」行をクリックして反転させ、[編集] を押します。
[マウントポイント] に「/boot」と入力し、
[次のパーティションタイプでフォーマット] を選択して [OK] を押します。


スクリーンショット


5.4. CentOS 5.2 用の LVM ボリュームグループ と LVM 論理ボリュームを作成します。


まず、「/dev/sda6」行をクリックして反転させ、[LVM] を押します。
[ボリュームグループ名] に 「CentOS5.2」と入力し、
[使用する物理ボリューム] は 「sda6」だけチェックされている状態にします。


スクリーンショット


次に、swap 論理ボリュームを追加します。
[追加] ボタンを押し、[ファイルシステムタイプ]に「swap」を選択します。
[論理ボリューム名] は「swap」でよいでしょう。
[サイズ] に メモリの2倍の値を指定し、[OK] ボタンを押します。


スクリーンショット


さらに、ルート論理ボリュームを追加します。
[追加] ボタンを押し、[マウントポイント] で「/」を指定します。
[論理ボリューム名] は「root」でよいでしょう。
[サイズ] の値はそのままで、[OK] ボタンを押します。


スクリーンショット


スクリーンショット


5.5. パーティション設定を確認します。


・/dev/sda3 が /boot としてフォーマットされる。
・LVM ボリュームグループ CentOS5.2 内の root と swap が フォーマットされる。


5.6. パーティション作成を実行します。


[次へ] を選択します。 [フォーマットの警告] が出ますが、そのまま実行します。


5.7. 「GRUBブートローダーは、/dev/sda にインストールされます」と表示されますので、


  [高度なブートローダーオプションの設定] にチェックを入れ、[次へ] を押します。
  [ブートローダーの記録をインストールする場所] に「/dev/sda3」を指定し、[次へ] を押します。


5.8. インストールを続行し、インストールが終わったら再起動します。



6. CentOS 5.2 の初期設定


6.1. GRUB メニューが出ますので、「CentOS 5.2」を選択します。


6.2. CentOS 5.2 が起動します。


6.3. CentOS 5.2 の初期設定を行います。


6.4. root でログインし、/boot/grub/grub.conf を編集します。


# nano /boot/grub/grub.conf


以下の行を編集し、保存します。


boot=/dev/sda3


※行頭の#を削除し、boot 行を有効にします。



7. 以上で Fedora 10 と CentOS 5.2 のマルチブートの設定は終了です。


 おつかれさまでした。


スクリーンショット





[作成日 2009/3/18]