目次にジャンプページナビゲーションにジャンプ: 前のページ[アクセスキーp]/次のページ[アクセスキーn]
documentation.suse.com / SUSE Linux Enterprise Desktopドキュメント / 管理ガイド / Linuxシステムのブート / ブートローダGRUB 2
適用項目 SUSE Linux Enterprise Desktop 15 SP5

18 ブートローダGRUB 2

この章では、SUSE® Linux Enterprise Desktopで使用されているブートローダGRUB 2の設定方法について説明します。これは、現在GRUB Legacyと呼ばれる従来のGRUBブートローダの後継バージョンです。GRUB 2は、SUSE® Linux Enterprise Desktopのバージョン 12以降でデフォルトのブートローダになっています。YaSTモジュールは、最も重要な設定を行うために使用できます。ブート手順は、総じて第16章 「ブートプロセスの概要で説明しています。UEFIマシンでのセキュアブートのサポートの詳細については、第17章 「UEFI (Unified Extensible Firmware Interface)を参照してください。

18.1 GRUB LegacyとGRUB 2の主な相違点

  • 設定が異なるファイルに保存されます。

  • より多くのファイルシステム(Btrfsなど)がサポートされています。

  • LVMまたはRAIDデバイスに保存されたファイルを直接読み込めます。

  • テーマによってユーザインタフェースを翻訳および変更できます。

  • ファイルシステムなどの追加機能をサポートするモジュールをロードするためのメカニズムが組み込まれています。

  • 他のカーネルとオペレーティングシステム(Windowsなど)のブートエントリを自動的に検索して生成します。

  • Bashに似た最小限のコンソールが組み込まれています。

18.2 設定ファイルの構造

GRUB 2の設定は、次のファイルに基づいています。

/boot/grub2/grub.cfg

このファイルには、GRUB 2メニュー項目の設定が含まれます。これは、GRUB Legacyで使用されていたmenu.lstに代わるものです。grub.cfgは編集しないでください。コマンドgrub2-mkconfig -o /boot/grub2/grub.cfgによって自動的に生成されます。

/boot/grub2/custom.cfg

このオプションファイルは、ブート時にgrub.cfgによって直接調達され、ブートメニューにカスタム項目を追加するために使用できます。SUSE Linux Enterprise Desktop 12 SP2からは、grub-onceを使用する場合も、これらのエントリが解析されます。

/etc/default/grub

このファイルは、GRUB 2のユーザ設定を制御し、通常は背景やテーマなどの追加の環境設定を含みます。

/etc/grub.d/にあるスクリプト

このディレクトリのスクリプトは、コマンドgrub2-mkconfig -o /boot/grub2/grub.cfgの実行中に読み込まれます。スクリプトの命令はメインの設定ファイル/boot/grub/grub.cfgに統合されます。

/etc/sysconfig/bootloader

この設定ファイルは、ブートローダタイプや、UEFIセキュアブートサポートを有効にするかどうかなどの特定の基本的な設定を保持します。

/boot/grub2/x86_64-efi/boot/grub2/power-ieee1275

これらの設定ファイルにはアーキテクチャ固有のオプションが含まれます。

GRUB 2は、複数の方法で制御できます。グラフィカルメニュー(スプラッシュ画面)を使用して、既存の設定からブートエントリを選択できます。設定は、他の設定ファイルからコンパイルされた/boot/grub2/grub.cfgファイルからロードされます(以下を参照)。GRUB 2設定ファイルはすべてシステムファイルとみなされ、編集するにはroot特権が必要です。

注記
注記: 設定の変更の有効化

GRUB 2設定ファイルを手動で編集した後、grub2-mkconfig -o /boot/grub2/grub.cfgを実行して変更を有効化する必要があります。ただし、YaSTを使用して設定を変更した場合、YaSTはこのコマンドを自動的に実行するため、この作業は必要ありません。

18.2.1 /boot/grub2/grub.cfgファイル

ブートメニューを含むグラフィカルスプラッシュ画面は、GRUB 2の設定ファイル/boot/grub2/grub.cfgに基づいており、このファイルにはメニューを使用してブートできるすべてのパーティションまたはオペレーティングシステムに関する情報が含まれています。

システムをブートするたびに、GRUB 2はファイルシステムから直接メニューファイルをロードします。このため、設定ファイルを変更するたびにGRUB 2を再インストールする必要がありません。grub.cfgは、カーネルをインストールまたは削除すると自動的に再構築されます。

grub.cfgは、ファイル/etc/default/grub、およびコマンドgrub2-mkconfig -o /boot/grub2/grub.cfgの実行中に/etc/grub.d/ディレクトリで見つかったスクリプトからコンパイルされます。そのため、このファイルは手動で編集しないでください。代わりに、関連するソースファイルを編集するか、18.3項 「YaSTによるブートローダの設定」で説明されているようにYaSTブートローダモジュールを使用して設定を変更します。

18.2.2 /etc/default/grubファイル

ここには、メニューを表示するタイミングやブートするデフォルトのOSなど、GRUB 2のより一般的なオプションが含まれます。すべての使用可能なオプションについては、次のコマンドの出力を参照してください。

> grep "export GRUB_DEFAULT" -A50 /usr/sbin/grub2-mkconfig | grep GRUB_

定義済みの変数以外にユーザ独自の変数を導入して、後から/etc/grub.dディレクトリにあるスクリプト内でそれらの変数を使用できます。

/etc/default/grubを編集した後で、grub2-mkconfig -o /boot/grub2/grub.cfgを使用してメインの設定ファイルをアップデートします。

注記
注記: スコープ

このファイルに設定されているオプションはすべて、全ブートエントリに影響する汎用オプションです。XenカーネルまたはXenハイバーバイザに固有のオプションは、GRUB_*_XEN_*設定オプションを介して設定できます。詳細については、以下を参照してください。

GRUB_DEFAULT

デフォルトでブートされるブートメニューエントリを設定します。値は、数値、メニューエントリの完全な名前、またはsavedになります。

GRUB_DEFAULT=2は、3番目(0から数える)のブートメニューエントリをブートします。

GRUB_DEFAULT="2>0"は、3番目の最上位レベルのメニューエントリの1番目にあるサブメニューエントリをブートします。

GRUB_DEFAULT="Example boot menu entry"は、Example boot menu entryというタイトルのメニューエントリをブートします。

GRUB_DEFAULT=savedは、grub2-onceコマンドまたはgrub2-set-defaultコマンドによって指定されたエントリをブートします。grub2-rebootは次回の再起動時にのみ有効なデフォルトブートエントリを設定するのに対し、grub2-set-defaultは変更しない限りデフォルトとして使用されるブートエントリを設定します。grub2-editenv listは、次のブートエントリをリストします。

GRUB_HIDDEN_TIMEOUT

ユーザがキーを押すまで、指定された秒数待機します。この間は、ユーザがキーを押さない限りメニューは表示されません。指定された時間内にキーが押されなかった場合、制御はGRUB_TIMEOUTに渡されます。GRUB_HIDDEN_TIMEOUT=0は、まずShiftキーが押されているかどうかを確認し、押されている場合はブートメニューを表示し、押されていない場合は即座にデフォルトのメニューエントリをブートします。これは、GRUB 2によって識別されるブート可能なOSが1つだけの場合のデフォルトです。

GRUB_HIDDEN_TIMEOUT_QUIET

falseが指定されていて、GRUB_HIDDEN_TIMEOUT機能が有効な場合は、空の画面にカウントダウンタイマが表示されます。

GRUB_TIMEOUT

自動的にデフォルトのブートエントリをブートする前に、ブートメニューを表示する時間(秒数)。キーを押すとタイムアウトはキャンセルされ、GRUB 2はユーザが手動で選択するまで待機します。GRUB_TIMEOUT=-1は、ユーザがブートエントリを手動で選択するまでメニューを表示します。

GRUB_CMDLINE_LINUX

この行のエントリは、標準モードおよび回復モード用のブートエントリの最後に追加されます。この行を使用して、カーネルパラメータをブートエントリに追加します。

GRUB_CMDLINE_LINUX_DEFAULT

GRUB_CMDLINE_LINUXと同じですが、標準モードでのみエントリが追加されます。

GRUB_CMDLINE_LINUX_RECOVERY

GRUB_CMDLINE_LINUXと同じですが、回復モードでのみエントリが追加されます。

GRUB_CMDLINE_LINUX_XEN_REPLACE

このエントリは、すべてのXenブートエントリのGRUB_CMDLINE_LINUXパラメータを置き換えます。

GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT

GRUB_CMDLINE_LINUX_XEN_REPLACEと同じですが、GRUB_CMDLINE_LINUX_DEFAULTのパラメータのみを置き換えます。

GRUB_CMDLINE_XEN

このエントリは、Xenゲストカーネルのカーネルパラメータのみを指定します。基本原則は、GRUB_CMDLINE_LINUXと同じです。

GRUB_CMDLINE_XEN_DEFAULT

GRUB_CMDLINE_XENと同じです。基本原則は、GRUB_CMDLINE_LINUX_DEFAULTと同じです。

GRUB_TERMINAL

入出力端末デバイスを有効化および指定します。console (PC BIOSおよびEFIコンソール)、serial (シリアル端末)、ofconsole (Open Firmwareコンソール)、またはデフォルトのgfxterm (グラフィックモード出力)のいずれかになります。また、必要なオプションを引用符で囲むことで、2つ以上のデバイスを有効にすることもできます(たとえば、GRUB_TERMINAL="console serial")。

GRUB_GFXMODE

gfxtermグラフィカル端末で使用される解像度。使用できるモードはグラフィックカード(VBE)でサポートされているモードのみです。デフォルトは「auto」で、優先解像度の選択を試みます。GRUB 2のコマンドラインで「videoinfo」と入力すると、GRUB 2で使用可能な画面解像度が表示されます。コマンドラインにアクセスするには、GRUB 2ブートメニュー画面が表示されているときにCと入力します。

また、色数を解像度設定に追加することで色数も指定できます(たとえば、GRUB_GFXMODE=1280x1024x24)。

GRUB_BACKGROUND

gfxtermグラフィカル端末の背景イメージを設定します。イメージはブート時にGRUB 2によって読み込み可能なファイルでなければならず、拡張子.png.tga.jpg、または.jpegで終わる必要があります。必要であれば、イメージは画面に合わせて拡大されます。

GRUB_DISABLE_OS_PROBER

このオプションをtrueに設定すると、他のオペレーティングシステムの自動検索は無効になります。/boot/内のカーネルイメージと、/etc/grub.d/内にあるユーザ独自のスクリプトのオプションのみが検出されます。

SUSE_BTRFS_SNAPSHOT_BOOTING

このオプションをtrueに設定すると、GRUB 2をSnapperのスナップショットの状態に直接ブートできます。詳細については、10.3項 「スナップショットからのブートによるシステムロールバック」を参照してください。

すべてのオプションのリストについては、 GNU GRUB manualを参照してください。

18.2.3 /etc/grub.d内のスクリプト

このディレクトリのスクリプトは、コマンドgrub2-mkconfig -o /boot/grub2/grub.cfgの実行中に読み込まれます。スクリプトの命令は/boot/grub2/grub.cfgに統合されます。grub.cfg内のメニュー項目の順序は、このディレクトリ内のファイルの実行順序によって決まります。まず、名前が数字で始まるファイルが、最も小さい数字が付いたものから順番に実行されます。00_header10_linuxの前に実行され、10_linuxは40_customの前に実行されます。アルファベットの名前が付いたファイルが存在する場合は、名前が数字で始まるファイルの後に実行されます。grub2-mkconfigの実行中にgrub.cfgへ出力を生成するのは実行可能ファイルのみです。デフォルトでは、/etc/grub.dディレクトリ内のファイルはすべて実行可能ファイルです。

ヒント
ヒント: grub.cfgの永続的なカスタムコンテンツ

grub2-mkconfigを実行するたびに/boot/grub2/grub.cfgが再コンパイルされるため、カスタムコンテンツはすべて失われます。grub2-mkconfigの実行後にカスタムコンテンツを失わずに行を/boot/grub2/grub.cfgに直接挿入するには、次の行の間に挿入します。

### BEGIN /etc/grub.d/90_persistent ###

および

### END /etc/grub.d/90_persistent ###

90_persistentスクリプトにより、このようなコンテンツが確実に保存されます。

最も重要なスクリプトのリストを以下に示します。

00_header

システムファイルの場所、表示設定、テーマ、以前に保存したエントリなどの環境変数を設定します。また、/etc/default/grubに保存されている初期設定をインポートします。通常、このファイルを変更する必要はありません。

10_linux

ルートデバイス上のLinuxカーネルを識別し、関連するメニューエントリを作成します。これには、関連する回復モードオプション(有効な場合)が含まれます。最新のカーネルのみがメインメニューページに表示され、その他のカーネルはサブメニューに含まれます。

30_os-prober

このスクリプトは、os-proberを使用してLinuxやその他のオペレーティングシステムを検索し、結果をGRUB 2メニューに示します。他の特定のオペレーティングシステム(WindowsやmacOSなど)を識別するためのセクションがあります。

40_custom

このファイルを使用すると、grub.cfgに簡単にカスタムブートエントリを組み込むことができます。最初のexec tail -n +3 $0の部分は変更しないようにしてください。

処理シーケンスは、名前の先頭の数値によって設定され、最も小さい数値が最初に実行されます。スクリプトの名前が同じ数値で始まる場合は、名前全体のアルファベット順で順序が決まります。

ヒント
ヒント: /boot/grub2/custom.cfg

/boot/grub2/custom.cfgを作成してコンテンツを入力すると、ブート時に40_customの直後に自動的に/boot/grub2/grub.cfgに組み込まれます。

18.2.4 BIOSドライブとLinuxデバイスのマッピング

GRUB Legacyでは、device.map設定ファイルを使用して、BIOSドライブ番号からLinuxデバイス名を派生させていました。BIOSドライブとLinuxデバイスのマッピングは常に正しく推測できるとは限りません。たとえば、BIOS設定でIDEとSCSIのブートシーケンスが入れ替わると、GRUB Legacyは誤った順序を取得します。

GRUB 2では、grub.cfgの生成時にデバイスID文字列(UUID)またはファイルシステムラベルを使用することで、この問題を回避しています。GRUB 2ユーティリティは一時デバイスマップをオンザフライで作成します。通常、特に単一ディスクのシステムでは、この処理で十分です。

ただし、GRUBの自動デバイスマッピングメカニズムを無効にする必要がある場合は、カスタムマッピングファイル/boot/grub2/device.mapを作成します。次の例では、マッピングを変更して、DISK 3をブートディスクにしています。パーティション番号は、GRUB Legacyでは1から始まっていましたが、GRUB 2では0から始まる点に注意してください。

(hd1)  /dev/disk-by-id/DISK3 ID
(hd2)  /dev/disk-by-id/DISK1 ID
(hd3)  /dev/disk-by-id/DISK2 ID

18.2.5 ブート手順実行中のメニューエントリの編集

メニューエントリを直接編集できると、誤設定が原因でシステムがブートしなくなった場合に役立ちます。また、システム設定を変更せずに新しい設定をテストする場合にも使用できます。

  1. グラフィカルブートメニューで、編集するエントリを矢印キーで選択します。

  2. Eを押して、テキストベースのエディタを開きます。

  3. 矢印キーを使用して、編集する行へ移動します。

    GRUB 2ブートエディタ
    図 18.1: GRUB 2ブートエディタ

    ここでは2つのオプションがあります。

    1. スペース区切りのパラメータを、linuxまたはlinuxefiで始まる行の終わりに追加して、カーネルパラメータを編集します。すべてのパラメータのリストはhttps://en.opensuse.org/Linuxrcから入手できます。

    2. または、一般オプションを編集して、カーネルバージョンなどを変更します。<Tab>キーを押すと、考えられる完了結果がすべて提示されます。

  4. F10キーを押して変更内容が反映されたシステムをブートするか、Escキーを押して編集内容は破棄し、GRUB 2メニューに戻ります。

この方法で加えた変更は、現在のブートプロセスだけに適用され、永続的に保存されることはありません。

重要
重要: ブート手順実行中のキーボードレイアウト

ブート時は、USキーボードレイアウトだけが使用可能です。Figure 8.1, “US keyboard layout”を参照してください。

注記
注記: インストールメディアのブートローダ

従来のBIOSが搭載されたシステム上にあるインストールメディアのブートローダは、引き続きGRUB Legacyになります。ブートパラメータを追加するには、エントリを選択し、入力を開始します。インストールブートエントリに追加した内容は、インストール済みシステムに永続的に保存されます。

18.2.6 ブートパスワードの設定

GRUB 2は、オペレーティングシステムのブート前でも、ファイルシステムにアクセスできるようにします。rootパーミッションを持たないユーザは、システムのブート後、アクセス権のないLinuxシステム上のファイルにアクセスできます。この種のアクセスを阻止したり、ユーザによる特定のメニューエントリのブートを防止するために、ブートパスワードを設定できます。

重要
重要: ブート時にパスワードが必要です

設定すると、ブートのたびにブートパスワードが必要になります。つまり、システムは自動的にはブートしません。

ブートパスワードを設定するには、次の手順に従います。または、YaSTを使用してください(パスワードでブートローダを保護する を参照してください)。

  1. grub2-mkpasswd-pbkdf2:を使用してパスワードを暗号化します。

    > sudo grub2-mkpasswd-pbkdf2
    Password: ****
    Reenter password: ****
    PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.9CA4611006FE96BC77A...
  2. set superusersコマンドを使用して、結果の文字列をまとめて/etc/grub.d/40_customファイルに貼り付けます。

    set superusers="root"
    password_pbkdf2 root grub.pbkdf2.sha512.10000.9CA4611006FE96BC77A...
  3. メインの設定ファイルに変更をインポートするには、次を実行します。

    > sudo grub2-mkconfig -o /boot/grub2/grub.cfg

再起動後、メニューエントリのブートを試みると、ユーザ名とパスワードの入力が求められます。「root」と入力し、grub2-mkpasswd-pbkdf2コマンドの実行時に入力したパスワードを入力します。資格情報が正しい場合、システムは選択したブートエントリをブートします。

詳細については、https://www.gnu.org/software/grub/manual/grub.html#Securityを参照してください。

18.2.7 ブートメニューエントリへの許可されたアクセス

認可のレベルに応じてブートメニューエントリへのアクセスを許可するようにGRUB 2を設定できます。パスワードで保護された複数のユーザアカウントを設定し、それらのユーザアカウントに異なるメニューエントリへのアクセス権を割り当てることができます。GRUB 2で認可を設定するには、次の手順に従います。

  1. GRUB 2で使用するユーザアカウントごとに1つのパスワードを作成して暗号化します。18.2.6項 「ブートパスワードの設定」で説明されているように、grub2-mkpasswd-pbkdf2コマンドを使用します。

  2. /etc/grub.d/10_linuxファイルを削除します。これにより、デフォルトのGRUB 2メニューエントリを出力できなくなります。

  3. /boot/grub2/custom.cfgファイルを編集して、カスタムメニューエントリを手動で追加します。次のテンプレートは、使用例に合わせて調整します。

    set superusers=admin
    password admin ADMIN_PASSWORD
    password maintainer MAINTAINER_PASSWORD
    
    menuentry 'Operational mode' {
      insmod ext2
      set root=hd0,1
      echo 'Loading Linux ...'
      linux /boot/vmlinuz root=/dev/vda1 $GRUB_CMDLINE_LINUX_DEFAULT $GRUB_CMDLINE_LINUX mode=operation
      echo 'Loading Initrd ...'
      initrd /boot/initrd
    }
    
    menuentry 'Maintenance mode' --users maintainer {
      insmod ext2
      set root=hd0,1
      echo 'Loading Linux ...'
      linux /boot/vmlinuz root=/dev/vda1 $GRUB_CMDLINE_LINUX_DEFAULT $GRUB_CMDLINE_LINUX mode=maintenance
      echo 'Loading Initrd ...'
      initrd /boot/initrd
    }
  4. メインの設定ファイルに変更をインポートします。

    > sudo grub2-mkconfig -o /boot/grub2/grub.cfg

これまでの例で:

  • GRUB 2メニューにはOperational mode (動作モード)保守モードの2つのエントリがあります。

  • ユーザを指定しない場合は、両方のブートメニューエントリにアクセスできますが、GRUB 2コマンドラインにアクセスしたり、既存のメニューエントリを編集したりすることはできません。

  • adminユーザは、GRUB 2コマンドラインにアクセスし、既存のメニューエントリを編集できます。

  • maintenanceユーザは、リカバリメニュー項目を選択できます。

18.3 YaSTによるブートローダの設定

SUSE Linux Enterprise Desktopシステムでブートローダの汎用オプションを設定する最も簡単な方法は、YaSTモジュールを使用することです。YaSTコントロールセンターで、システム › ブートローダの順に選択します。モジュールにシステムの現在のブートローダ設定が示され、変更を加えられます。

ブートコードオプションタブで、タイプ、場所、および高度なローダ設定に関する設定を表示および変更できます。GRUB 2を標準モードとEFIモードのどちらで使用するかを選択することができます。

重要
重要: EFIシステムではGRUB2-EFIが必須

EFIシステムがある場合は、GRUB2-EFIのみをインストールできます。それ以外をインストールすると、システムはブート不能になります。

重要
重要: ブートローダの再インストール

ブートローダを再インストールするには、必ずYaSTで設定を変更して、その後で元に戻すという操作を実行します。たとえば、GRUB2-EFIを再インストールするには、一度GRUB2を選択して、すぐにGRUB2-EFIに戻します。

元に戻さない場合、ブートローダが完全には再インストールされない可能性があります。

注記
注記: カスタムのブートローダ

リストにないブートローダを使用する場合は、ブートローダはインストールしないでくださいを選択します。このオプションを選択する場合には、あらかじめ、ブートローダのドキュメントをよくお読みください。

18.3.1 ブートローダの場所とブートコードオプション

ブートローダのデフォルトの場所はパーティション設定によって異なり、マスタブートレコード(MBR)か、/パーティションのブートセクタです。ブートローダの場所を変更するには、次の手順に従います。

手順 18.1: ブートローダの場所の変更
  1. ブートコードオプションタブを選択し、ブートローダの場所で、次のいずれかのオプションを選択します。

    マスタブートレコードからブート

    ディレクトリ/bootが含まれるディスクのMBRにブートローダをインストールします。通常は/にマウントされるディスクになりますが、/bootが異なるディスクの別個のパーティションにマウントされる場合は、そのディスクのMBRが使用されます。

    ルートパーティションからブート

    /パーティションのブートセクタにブートローダがインストールされます。

    Custom Root Partition (カスタムルートパーティション)

    このオプションを選択すると、手動でブートローダの場所を指定できます。

  2. OKをクリックして、変更内容を適用します。

ブートコードオプション
図 18.2: ブートコードオプション

ブートコードオプションタブには、以下の追加のオプションがあります。

ブートパーティション用パーティションテーブルにアクティブフラグを設定

/bootディレクトリを含むパーティションをアクティブにします。POWERシステムの場合、PRePパーティションをアクティブにします。古いBIOSおよび/またはレガシーオペレーティングシステムを使用しているシステムでは、非アクティブなパーティションからのブートに失敗する可能性があるため、このオプションを使用してください。このオプションをアクティブのままにしておくのが安全です。

MBRに汎用ブートコードを書き込む

MBRにカスタムの「非GRUB」コードが含まれている場合、このコードは、このオプションにより、汎用の、オペレーティングシステムに依存しないコードに置き換えられます。このオプションを無効にすると、システムが起動できなくなる可能性があります。

Enable Trusted Boot Support

信頼されたコンピューティング機能(TPM(Trusted Platform Module))をサポートするTrustedGRUB2を開始します。詳細については、https://github.com/Sirrix-AG/TrustedGRUB2を参照してください。

プロテクティブMBRフラグセクションには、次のオプションが含まれています。

set

これは、従来のレガシBIOSブートに適しています。

remove

これは、UEFIブートに適しています。

変更禁止

これは通常、すでに機能しているシステムがある場合の最適な選択肢です。

多くの場合、YaSTがデフォルトで最適な選択肢となります。

18.3.2 ディスクの順序の変更

コンピュータに複数のハードディスクがある場合、ディスクのブートシーケンスを指定できます。リストの最初のディスクは、MBRからブートする場合にGRUB 2がインストールされる場所です。これは、デフォルトでSUSE Linux Enterprise Desktopがインストールされるディスクです。リストの残りは、GRUB 2のデバイスマッパのヒントです(18.2.4項 「BIOSドライブとLinuxデバイスのマッピング」を参照)。

警告
警告: ブートできないシステム

デフォルト値は、通常、ほぼすべての展開で有効です。ディスクのブート順序を正しく変更しないと、次回の再起動時にシステムをブートできなくなる可能性があります。たとえば、リスト内の最初のディスクがBIOSのブート順序の一部ではなく、リスト内の他のディスクに空のMBRがある場合などです。

手順 18.2: ディスクの順序の設定
  1. ブートコードオプションタブを開きます。

  2. ディスク順序の編集をクリックします。

  3. 複数のディスクが表示されている場合には、ディスクを選択してから上へまたは下へをクリックして、ディスクの表示順を変更します。

  4. OKを2回クリックして、変更内容を保存します。

18.3.3 詳細オプションの設定

詳細なブートパラメータを設定するには、Boot Loader Options (ブートローダオプション)タブを使用します。

18.3.3.1 ブートローダオプションタブ

ブートローダオプション
図 18.3: ブートローダオプション
ブートローダのタイムアウト

新しい値を入力するか、マウスで適切な矢印キーをクリックして、タイムアウト(秒)の値を変更します。

その他のOSの検知

選択すると、ブートローダはWindowsや他のLinuxインストールなど、インストール済みの他のシステムを検索します。

ブート時にメニューを隠す

ブートメニューを隠し、デフォルトエントリをブートします。

デフォルトブートエントリの調整

デフォルトのブートセクションリストから目的のエントリを選択します。ブートエントリ名内の>記号は、ブートセクションとそのサブセクションを区切っている点に注意してください。

パスワードでブートローダを保護する

ブートローダとシステムを追加のパスワードで保護します。手動による環境設定の詳細は、18.2.6項 「ブートパスワードの設定」を参照してください。このオプションを有効にすると、ブートのたびにブートパスワードが必要になります。つまり、システムは自動的にはブートしません。ただし、GRUB 1の動作を希望する場合は、さらに項目の修正のみを保護するを有効にします。この設定では、誰でもブートエントリを選択してシステムをブートできますが、GRUB 2 rootユーザのパスワードは、ブートエントリを変更する場合にのみ必要です。

18.3.3.2 カーネルパラメータタブ

カーネルパラメータ
図 18.4: カーネルパラメータ
オプションのカーネルコマンドラインパラメータ

システム機能の有効化/無効化、ドライブの追加などを実行するには、ここでオプションのカーネルパラメータを指定します。

CPU緩和策

SUSEでは、CPUサイドチャネル攻撃を防ぐために導入されているすべてのソフトウェア緩和策に対する1つ以上のカーネルブートコマンドラインパラメータをリリースしました。これらの一部により、性能の低下を招く場合があります。設定に応じて、セキュリティと性能とのバランスをとるために次のオプションのいずれかを選択してください。

自動 お使いのCPUモデルで必要なすべての緩和策を有効化しますが、CPUスレッドを跨いだ攻撃は保護できません。この設定による性能面への影響は、負荷内容によって異なります。

自動 + SMT無し 利用可能なセキュリティ面の緩和策をすべて実施することになります。お使いのCPUモデルで必要なすべての緩和策を有効化します。さらに、複数のCPUスレッドを跨いだサイドチャネル攻撃を防ぐため、同時マルチスレッディング(SMT)の機能も無効化します。これにより、負荷内容にもよりますが、[自動]よりも性能面への影響が増すことになります。

オフ 全ての緩和策を無効化します。CPUのモデルによってさまざまなサイドチャネル攻撃の可能性が高まることになります。この設定により性能面への影響はなくなります。

手動 緩和レベルを設定しません。カーネルのコマンドラインオプションを使用してCPU緩和策を手動で指定します。

グラフィカルコンソールを使用する

オンにすると、テキストモードではなくグラフィカルなスプラッシュスクリーンにブートメニューが表示されます。ブート画面の解像度はデフォルトで自動的に設定されますが、コンソールの解像度を介して手動で設定することもできます。グラフィカルテーマ定義ファイルはコンソールのテーマファイルチューザーで指定できます。これを変更するだけで、独自のカスタムメイドのテーマを適用できます。

シリアルコンソールの使用

コンピュータがシリアルコンソールで制御されている場合は、このオプションを有効にして、どのCOMポートをどの速度で使用するか指定します。info grubまたはhttp://www.gnu.org/software/grub/manual/grub.html#Serial-terminalを参照してください。

18.4 役立つGRUB 2コマンド

grub2-mkconfig

/etc/default/grubおよび/etc/grub.d/のスクリプトに基づいて、新しい/boot/grub2/grub.cfgを生成します。

例 18.1: grub2-mkconfigの使用法
grub2-mkconfig -o /boot/grub2/grub.cfg
ヒント
ヒント: 構文チェック

パラメータを付けずにgrub2-mkconfigを実行すると、設定がSTDOUTに出力され、そこで設定を確認できます。構文をチェックするには、/boot/grub2/grub.cfgが書き込まれた後にgrub2-script-check を使用します。

重要
重要: grub2-mkconfigはUEFIセキュアブートテーブルを修復できません

UEFIセキュアブートを使用していて、システムがGRUB 2に正常にアクセスできなくなった場合、Shimを再インストールして、UEFIブートテーブルを再生成する必要がある場合があります。次のようにします。

# shim-install --config-file=/boot/grub2/grub.cfg
grub2-mkrescue

インストールされたGRUB 2設定の、ブート可能なレスキューイメージを作成します。

例 18.2: grub2-mkrescueの使用法
grub2-mkrescue -o save_path/name.iso iso
grub2-script-check

指定したファイルの構文エラーをチェックします。

例 18.3: grub2-script-checkの使用
grub2-script-check /boot/grub2/grub.cfg
grub2-once

次のブート時にのみ使用されるデフォルトブートエントリを設定します。使用可能なブートエントリのリストを取得するには、--listオプションを使用します。

例 18.4: grub2-onceの使用法
grub2-once number_of_the_boot_entry
ヒント
ヒント: grub2-once help

オプションを付けずにプログラムを呼び出すと、使用可能なすべてのオプションのリストを取得できます。

18.5 詳細情報

GRUB 2の詳細情報は、https://www.gnu.org/software/grub/で入手できます。また、grub情報ページも参照してください。にあるTechnical Information Search(技術情報検索)で、キーワードGRUB 2https://www.suse.com/supportを検索して、特別な事項に関する情報を入手することもできます。