難易度は Level 1(やさしめ)〜Level 5(難関) の5段階です。
LinuC レベル2 201試験のサンプル問題(本番形式・解説付き)
LinuC レベル2 201試験(LPI-Japan・LinuC-2 201試験(Linuxシステム構築))の出題形式を、実際の問題で確かめられます。ここに掲載する5問は、無料の会員登録ですぐ解ける模試 第1回(58問)の冒頭から抜粋したオリジナル問題です。当サイトは全405問を本番CBT準拠の形式で収録しており、この5問はそのごく一部にあたります。
設問1
BIOSレガシーブートで起動するシステムにおいて、/etc/default/grubの設定値と/etc/grub.d/以下のスクリプトの内容を反映し、GRUB 2の設定ファイル/boot/grub2/grub.cfgを新規に生成したい。適切なコマンドはどれか。
- grub2-install /dev/sda
- grub2-mkconfig -o /boot/grub2/grub.cfg(正解)
- update-initramfs -u
- efibootmgr -c -d /dev/sda -p 1 -l '\EFI\BOOT\BOOTX64.EFI'
解説
grub2-mkconfig(Debian系ではgrub-mkconfig)は、/etc/default/grubの設定値と/etc/grub.d/以下のスクリプトの出力を統合し、-oオプションで指定した先にgrub.cfgを生成するコマンドである。
他の選択肢が誤りである理由
- 「grub2-install /dev/sda」誤り。grub2-installはGRUB本体(コアイメージ)をMBRやESPなどのデバイスにインストールするコマンドであり、grub.cfgの生成は行わない。
- 「update-initramfs -u」誤り。update-initramfsはDebian系でinitramfsイメージを更新するコマンド(initramfs-tools付属)であり、GRUBの設定ファイル生成とは無関係である。
- 「efibootmgr -c -d /dev/sda -p 1 -l '\EFI\BOOT\BOOTX64.EFI'」誤り。efibootmgrはUEFIファームウェアのNVRAMに保持されるブートエントリを追加・削除・変更するコマンドであり、grub.cfgの生成とは無関係である。この問題はBIOSレガシーブート環境なので、そもそも用途としても合わない。
設問2
RHEL/CentOS系(grub2パッケージ採用)のシステムで、/etc/default/grubや/etc/grub.d/の現在の設定内容から、GRUB2の設定ファイル/boot/grub2/grub.cfgを生成(上書き)するコマンドを入力せよ。
入力形式(コマンドを打ち込んで答える問題です)
grub2-mkconfig -o /boot/grub2/grub.cfg(正解)
別解: grub2-mkconfig --output=/boot/grub2/grub.cfg
解説
grub2-mkconfig(RHEL系)はgrub-mkconfig(Debian系)と同じGRUB2本体が提供するコマンドで、-o(--output)オプションで出力先ファイルを明示して初めてgrub.cfgへ書き込む。省略すると標準出力に表示するだけで終わる点に注意する。両者はコマンド名に「2」が付くか付かないかの違いだけで、機能は同一である。
設問3
UEFIファームウェアで起動するLinuxシステムにおいて、ブートローダーの実行ファイル(例: grubx64.efi)が配置されるESP(EFI System Partition)は、通常どのディレクトリにマウントされるか。
- /boot/efi/(正解)
- /usr/lib/systemd/
- /etc/grub.d/
- /boot/grub2/
解説
ESP(EFI System Partition)は多くのディストリビューションで/boot/efi/にマウントされ、その配下の/EFI/<ディストリ名>/にgrubx64.efiなどのブートローダー実行ファイルが格納される。
他の選択肢が誤りである理由
- 「/usr/lib/systemd/」誤り。/usr/lib/systemd/はsystemdが提供するユニットファイルなどの格納場所であり、ブートパーティションとは無関係である。
- 「/etc/grub.d/」誤り。/etc/grub.d/はgrub2-mkconfig/grub-mkconfigがgrub.cfgを生成する際に参照するスクリプト群を格納するディレクトリであり、パーティションのマウントポイントではない。
- 「/boot/grub2/」誤り。/boot/grub2/はGRUB2の設定ファイル(grub.cfg)やモジュールなどが格納されるディレクトリであり、ESP自体のマウントポイントではない。
設問4
初期RAMディスク(initrd/initramfs)の役割に関する説明として、最も適切なものはどれか。
- UEFIファームウェアが起動デバイスを選択するために参照するブートエントリ情報をNVRAMに格納する
- カーネルのソースコードツリー中で、ハードウェアやサブシステムの仕様・使用方法を説明する文書群を格納する
- ハードディスクの先頭512バイトに配置され、パーティションテーブルとブートローダーの最初のステージを格納する
- ルートファイルシステムをマウントするために必要なカーネルモジュールやツールを一時的な環境として提供し、本来のルートファイルシステムへの切り替え(switch_root等)を行う(正解)
解説
initrd/initramfsは、本来のルートファイルシステムをマウントするために必要なストレージドライバなどのカーネルモジュールやツール類を含む一時的なファイルシステムであり、初期処理の後にswitch_root等で実際のルートファイルシステムへ制御を移す。
他の選択肢が誤りである理由
- 「UEFIファームウェアが起動デバイスを選択するために参照するブートエントリ情報をNVRAMに格納する」誤り。これはefibootmgr等で管理するUEFIブートエントリ(NVRAM)の説明であり、initrd/initramfsとは異なる。
- 「カーネルのソースコードツリー中で、ハードウェアやサブシステムの仕様・使用方法を説明する文書群を格納する」誤り。これはカーネルソースツリー内のDocumentationディレクトリの説明である。
- 「ハードディスクの先頭512バイトに配置され、パーティションテーブルとブートローダーの最初のステージを格納する」誤り。これはMBR(マスターブートレコード)の説明である。
設問5
systemdのユニットファイルが/etc/systemd/system/、/run/systemd/system/、/usr/lib/systemd/system/に同名で存在する場合の優先順位に関する説明として、正しいものはどれか。
- 3つのディレクトリのユニットファイルはすべて読み込まれ、内容が自動的にマージされるため優先順位という概念は存在しない
- /run/systemd/system/にあるユニットファイルは、/etc/systemd/system/にある同名のユニットファイルより常に優先される
- /etc/systemd/system/にあるユニットファイルは、/usr/lib/systemd/system/にある同名のユニットファイルより優先される(正解)
- /usr/lib/systemd/system/にあるユニットファイルは、パッケージ管理外で手動作成したものであり最優先される
解説
systemdは同名のユニットファイルが複数のディレクトリに存在する場合、最初に見つかったものだけを採用する。探索順は/etc/systemd/system/(管理者によるローカル設定)が最も優先され、次いで/run/systemd/system/(実行時生成分)、最後に/usr/lib/systemd/system/(パッケージ提供のデフォルト)となる。
他の選択肢が誤りである理由
- 「3つのディレクトリのユニットファイルはすべて読み込まれ、内容が自動的にマージされるため優先順位という概念は存在しない」誤り。同名の基本ユニットファイル自体は、複数箇所にあっても最初に見つかった1つだけが採用される(マージされるのはunit.d配下のドロップイン設定であり、基本ユニットファイル自体の話ではない)。
- 「/run/systemd/system/にあるユニットファイルは、/etc/systemd/system/にある同名のユニットファイルより常に優先される」誤り。優先順位は逆で、/etc/systemd/system/の方が/run/systemd/system/より優先される。
- 「/usr/lib/systemd/system/にあるユニットファイルは、パッケージ管理外で手動作成したものであり最優先される」誤り。/usr/lib/systemd/system/はパッケージ(ベンダー)が提供するデフォルトのユニットファイルの置き場所であり、手動作成物ではなく、優先度も3つの中で最も低い。
続きは、会員登録なしでそのまま50問解けます。採点と解説つきで、上と同じ本物の問題です。
登録なしで50問解く