LinuCレベル2 201試験の例題と解説
2.01.1ブートプロセスとGRUB
LinuCレベル2 201試験の出題範囲から「2.01.1 ブートプロセスとGRUB」についての例題を解いてみます。ここでは、GRUB2の設定ファイルについて確認しておきましょう。
例題
GRUB2が起動する度に読み込まれる設定ファイルとして正しいものを一つ選択してください。
- /etc/default/grub
- /etc/default/grub.cfg
- /boot/grub/grub
- /boot/grub/grub.cfg
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「4. /boot/grub/grub.cfg」です。
GRUB2(GRand Unified Bootloader version 2)とは、システム起動時に読み込みを行う、インストール済みのOSまたはカーネルを選択できるようにするプログラムです。
GRUB2が起動する際に読む込む設定ファイルは「/boot/grub/grub.cfg」です。
※ Linuxディストリビューションによっては、GRUB2の設定ファイルは「/boot/grub2/grub.cfg」の場合があります。
以下はUbuntuに関する起動メニューを抜粋したものです。
# vi /boot/grub/grub.cfg
:
(略)
:
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-fb15dfbe-6f67-4f82-9f52-698d1481b976' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
:
(略)
:
このように、起動可能なOSやOSを起動させるまでの時間など、起動メニューに関する設定が記載されています。
それでは選択肢を見ていきます。
1. /etc/default/grub
不正解です。
「/etc/default/grub」は、「/boot/grub/grub.cfg」の元となるファイルです。GRUB2の設定を変更する際に使用します。
GRUB2の設定を変更するには、設定ファイルの「/boot/grub/grub.cfg」を直接変更するのではなく、以下のようにgrub-mkconfigコマンドを用います。
# grub-mkconfig -o /boot/grub/grub.cfg
※Linuxディストリビューションによっては、GRUB2のコマンドはgrub2-mkconfigの場合があります。
grub-mkconfigコマンドを実行したときに読み込まれるファイルが「/etc/default/grub」です。
grub-mkconfigコマンドを実行すると、「/etc/default/grub」に記載されている設定情報を読み取り、その内容を -o オプションで指定されたGRUB2の設定ファイルに書き込みます。
そのため、GRUB2の設定を変更する際に、変更を行うファイルが「/etc/default/grub」です。
しかし、GRUB2が起動する度に読み込まれる設定ファイルではないため不正解となります。
2. /etc/default/grub.cfg
不正解です。
上記のようなファイルはありません。
3. /boot/grub/grub
不正解です。
上記のようなファイルはありません。
4. /boot/grub/grub.cfg
正解です。
既に説明した通り、「/boot/grub/grub.cfg」は、GRUB2が起動する際に読む込む設定ファイルです。
GRUB2では、起動時の設定ファイルと、設定変更時に更新するファイルが異なります。適用するためのコマンドも合わせて利用できる様にしておきましょう。
例題作成者
株式会社デージーネット OSS研究室 橋本 知里