3. ブートメニューのカスタマイズ

本セクションでは、ブートメニュー のカスタマイズに必要な情報を提供しています。これは、インストールイメージからシステムを起動した後に表示されるメニューです。通常、このメニューを使うと、Install Red Hat Enterprise LinuxBoot from local drive または Rescue an installed system といったオプションから選択することができます。これらのオプションはカスタマイズ可能で、新たなオプションを追加したり、(色や背景などの) 視覚スタイルを変更することができます。
インストールメディアには 2 つのブートローダーがあり、ISOLINUX は BIOS ファームウェアのシステムで使用され、GRUB2 は UEFI ファームウェアのシステムで使用されます。この 2 つは、Red Hat が提供する AMD64 および Intel 64 システム向けの全イメージに存在します。
ブートメニューオプションのカスタマイズは、特に Kickstart で便利なものです。Kickstart ファイルは、インストール開始前にインストーラーに提供する必要があります。通常これは、既存のブートオプションを手動で編集し、inst.ks= ブートオプションを追加することで行います。メディア上のブートローダー設定ファイルを編集する際には、このオプションを事前設定エントリーのいずれかに追加すことができます。
ブートローダーのカスタマイズを開始する前に、手順1「ISO イメージの抽出」 の手順に従って、編集する ISO イメージを作業ディレクトリーに展開します。編集が完了したら、手順3「ISO イメージの作成」 の手順に従って新規の起動可能な ISO イメージを作成します。

3.1. BIOS ファームウェアのシステム

BIOS ファームウェアのシステムでは、ISOLINUX ブートローダーが使用されます。
ISOLINUX ブートメニュー

図1 ISOLINUX ブートメニュー

ブートメディア上の isolinux/isolinux.cfg 設定ファイルには、カラースキームとメニュー構造 (エントリーおよびサブメニュー) を設定するディレクティブが含まれています。
設定ファイルでは、Red Hat Enterprise Linux のデフォルトのメニューエントリーである Test this media & Install Red Hat Enterprise Linux 7 が以下のブロックで定義されています。
label check
  menu label Test this ^media & install Red Hat Enterprise Linux 7.1
  menu default
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 rd.live.check quiet
上記の例で注目すべきオプションは以下の通りです。
  • menu label - メニュー内でエントリーが命名される方法を決定します。^ の文字はキーボードのショートカットを決定します (m のキー)。
  • menu default - このオプションがデフォルトで選択されるようにします。ただし、これはリスト内の最初のオプションではありません。
  • kernel - インストーラーカーネルを読み込みます。通常は変更しないでください。
  • append - 追加のカーネルオプションが含まれます。initrd=inst.stage2 の各オプションは必須となり、この他のものを追加できます。
    Anaconda 固有の使用可能なオプションは、Red Hat Enterprise Linux 7 インストールガイド に記載されています。注目すべきオプションには inst.ks= があり、このオプションを使用すると Kickstart ファイルの場所を指定できます。つまり、起動 ISO イメージ上に Kickstart ファイルを配置して、このオプションによってこれを使用することができます。例えば、kickstart.ks という名前のファイルをイメージの root ディレクトリーに置く場合は、inst.ks=hd:LABEL=RHEL-7.1\x20x86_64:/kickstart.ks を使用します。
    また、dracut オプションを使用することもできます。これについては dracut.cmdline(7) man ページを参照してください。

    重要

    (上記の inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 オプションの場合のように) ディスクラベルを使って特定のドライブを参照する場合は、すべての空白を \x20 で置き換えてください。
メニューエントリー定義の一部ではない他の重要なオプションには以下のものがあります。
  • timeout - デフォルトのメニューエントリーが自動的に使用されるまでのブートメニューの表示時間を指定します。デフォルト値は 600 で、メニューは 60 秒間表示されます。この値を 0 に設定すると、タイムアウトは完全に無効となります。

    注記

    ヘッドレスインストールを実行する場合は、この値を 1 のような低いものにすると、デフォルトの 60 秒間のタイムアウトを待機する必要がなくなります。
  • menu begin および menu end - submenu ブロックの開始点と終了点を指定します。これにより、サブメニューにトラブルシュートなどのオプションを追加したり、それらをグループ化することができます。オプションが 2 つのシンプルなサブメニューの例 (1 つは続行する、もう 1 つはメインメニューに戻る) は以下のようになります。
    menu begin ^Troubleshooting
      menu title Troubleshooting
    
    label rescue
      menu label ^Rescue a Red Hat Enterprise Linux system
      kernel vmlinuz
      append initrd=initrd.img inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 rescue quiet
    
    menu separator
    
    label returntomain
      menu label Return to ^main menu
      menu exit
    
    menu end
    上記の例で分かるように、サブメニューエントリーの定義は通常のメニューエントリーと同様のものですが、menu beginmenu end のステートメントの間でグループ化されています。2 つ目のオプションの menu exit 行はサブメニューを終了してメインメニューに戻るものです。
  • menu background - メニューの背景です。(以下の menu color で) 単色とするか、PNG、JPEG または LSS16 形式のイメージとすることができます。イメージを使用する場合は、set resolution ステートメントを使用して解像度の設定に寸法が一致するようにします。デフォルトの寸法は 640x480 です。
  • menu color - メニュー要素の色を指定します。完全な形式は以下のようになります。
    menu color element ansi foreground background shadow
    このコマンドの重要な部分は、element (色を適用する要素を指定) と foreground および background (実際の色を指定) になります。色は 16 進形式で #AARRGGBB 表記で示されます。最初の 2 桁 (AA) で不透明度を指定します (00 が完全な透明度、ff が完全な不透明度)。
    利用可能な要素、ANSI 値、シャドウ設定、その他の視覚に関するカスタマイズオプションについては、Syslinux Wiki を参照してください。
  • menu help textfile - 選択された場合にヘルプのテキストファイルを表示するメニューエントリーを作成します。
ISOLINUX 設定ファイルの完全なオプション一覧については、Syslinux Wiki を参照してください。

3.2. UEFI ファームウェアのシステム

UEFI ファームウェアのシステムでは GRUB2 ブートローダーが使用されます。
GRUB2 設定ファイルはブートメディア上にある EFI/BOOT/grub.cfg です。設定ファイルには事前設定済みのメニューエントリーと、ブートメニューの外観と機能を制御する他のディレクティブが含まれています。
設定ファイル内では、Red Hat Enterprise Linux のデフォルトのメニューエントリー (Test this media & install Red Hat Enterprise Linux 7.1) は以下のブロックで定義されます。
menuentry 'Test this media & install Red Hat Enterprise Linux 7.1' --class fedora --class gnu-linux --class gnu --class os {
  linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 rd.live.check quiet
  initrdefi /images/pxeboot/initrd.img
}
上記の例で注目すべきオプションは以下の通りです。
  • menuentry - メニューエントリーを定義するオプションです。エントリーのタイトルは、一重引用符または二重引用符 (' または ") に入れます。--class オプションを使うとメニューエントリーを異なる クラス にグループ化することができます。これは GRUB2 テーマを使用して異なるスタイルを設定することが可能です。

    注記

    各メニューエントリーの定義は上記の例のように中括弧 ({}) で囲む必要があります。
  • linuxefi - 起動するカーネル (上記の例では /images/pxeboot/vmlinuz) と追加オプションを定義します。これらのオプションをカスタマイズしてブートエントリーの動作を変更します。
    Anaconda 固有の使用可能なオプションは、Red Hat Enterprise Linux 7 インストールガイド に記載されています。注目すべきオプションには inst.ks= があり、このオプションを使用すると Kickstart ファイルの場所を指定できます。つまり、起動 ISO イメージ上に Kickstart ファイルを配置して、このオプションによってこれを使用することができます。例えば、kickstart.ks という名前のファイルをイメージの root ディレクトリーに置く場合は、inst.ks=hd:LABEL=RHEL-7.1\x20x86_64:/kickstart.ks を使用します。
    また、dracut オプションを使用することもできます。これについては dracut.cmdline(7) man ページを参照してください。

    重要

    (上記の inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 オプションの場合のように) ディスクラベルを使って特定のドライブを参照する場合は、すべての空白を \x20 で置き換えてください。
  • initrdefi - 読み込む初期 RAM ディスク (initrd) イメージの場所。
grub.cfg 設定ファイルで使用する他のオプションには以下のものがあります。
  • set timeout - デフォルトのメニューエントリーが自動的に使用されるまでのブートメニューの表示時間を指定します。デフォルト値は 60 で、メニューは 60 秒間表示されます。この値を -1 に設定すると、タイムアウトは完全に無効となります。

    注記

    ヘッドレスインストールを実行する場合は、この値を 0 にすると、デフォルトのブートエントリーが直ちにアクティベートされます。
  • submenu - submenu ブロックの定義です。これを使用するとサブメニューが作成でき、その下にあるエントリーをメインメニューに表示するのではなく、グループ化できます。デフォルト設定では Troubleshooting サブメニューがあり、これには既存システムを修復するためのエントリーが含まれます。
    エントリーのタイトルは、一重引用符または二重引用符 (' または ") で囲みます。
    submenu ブロックには上記で説明した menuentry 定義が 1 つ以上含まれ、ブロック全体は中括弧 ({}) で囲まれます。例を示します。
    submenu 'Submenu title' {
      menuentry 'Submenu option 1' {
        linuxefi /images/vmlinuz inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 xdriver=vesa nomodeset quiet
        initrdefi /images/pxeboot/initrd.img
      }
      menuentry 'Submenu option 2' {
        linuxefi /images/vmlinuz inst.stage2=hd:LABEL=RHEL-7.1\x20x86_64 rescue quiet
        initrdefi /images/initrd.img
      }
    }
  • set default - デフォルトで選択されるエントリーを指定します。エントリー番号は 0 から始まることに注意してください。デフォルトを 3 番目 のエントリーとする場合は、set default=2 を使用することになります。
  • theme - GRUB2 テーマファイルを格納しているディレクトリーの場所です。テーマを使用することで、背景やフォント、特定要素の色などのブートローダーの視覚的側面をカスタマイズすることができます。
    テーマファイル形式の完全な説明は本ガイドのスコープ外となります。カスタムテーマの作成に関する情報は、GNU GRUB Manual 2.00 を参照してください。
ブートメニューのカスタマイズに関する詳細情報は、GNU GRUB Manual 2.00 を参照してください。GRUB2 に関する全般情報は、Red Hat Enterprise Linux 7 システム管理者のガイド も参照してください。