8.4 ブートCDの作成

ブートマネージャを使用してシステムをブートできない場合、またはハードディスクやフロッピーディスクのMBRにブートマネージャをインストールできない場合は、Linuxに必要なすべての起動ファイルを使用してブート可能CDを作成することもできます。そのためには、システムにCDライタがインストールされている必要があります。

GRUBでは、stage2_eltoritoという特殊形式の stage2とカスタマイズされた menu.lst (オプション)を使用するだけで、ブート可能CD ROMを作成することができます。従来のファイルstage1およびstage2は不要です。

ブートCDの作成

  1. 以下のように、ISOイメージの作成先ディレクトリに移動します。cd /tmp

  2. &grubのサブディレクトリを作成し、新たに作成されたisoディレクトリに移動します。

    mkdir -p iso/boot/grub && cd iso
  3. カーネル、stage2_eltoritoinitrdmenu.lstおよびmessageファイルをiso/boot/にコピーします。

    cp /boot/vmlinuz boot/
    cp /boot/initrd boot/
    cp /boot/message boot/
    cp /usr/lib/grub/stage2_eltorito boot/grub
    cp /boot/grub/menu.lst boot/grub
  4. CD-ROMデバイスを指すように/boot/grub/menu.lstのパスエントリを調整します。そのためには、パス名に(hdx,y)形式で表示されるハードディスクのデバイス名を、CD-ROMドライブのデバイス名(cd)で置き換えます。また、メッセージファイル、カーネル、およびinitrdに対するパスを調整することが必要になる場合があります。これらのパスはそれぞれ、/boot/message/boot/vmlinuz、および/boot/initrdを参照する必要があります。調整を行った後、menu.lstは次の例のようになります。

    timeout 8
    default 0
    gfxmenu (cd)/boot/message
    
    title Linux
       root (cd)
       kernel /boot/vmlinuz root=/dev/sda5 vga=794 resume=/dev/sda1 \
       splash=verbose showopts
       initrd /boot/initrd

    ブート処理時にブートメッセージの表示を防止するには、「splash=verbose」の代わりに「splash=silent」を使用します。

  5. 次のコマンドでISOイメージを作成します。

    genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot \
    -boot-load-size 4 -boot-info-table -iso-level 2 -input-charset utf-8 \
    -o grub.iso /tmp/iso
  6. 好みのユーティリティを使用して、生成されたファイルgrub.isoをCDに書き込みます。ISOイメージをデータファイルとして書き込まず、お使いのCD書き込みユーティリティのCDイメージ作成オプションを使用します。