LinuCレベル2 201試験の例題と解説
2.01.4Linuxカーネルのコンパイル
今回は201試験の試験範囲から「2.01.4 Linuxカーネルのコンパイル」についての例題を解いてみます。
例題
Linuxカーネルコンパイル時のmakeのターゲットの説明として間違っているものを選びなさい。
- xconfig : Qtベースのフロントエンドを使用して現在の設定を更新
- gconfig : GTK+ベースのフロントエンドを使用して現在の設定を更新
- tarxz-pkg : xzで圧縮されたtarballとしてカーネルを構築
- bzImage : カーネルイメージを圧縮
- olddefconfig : 「.config」にある現在の設定をデフォルトの値で上書き
※この例題は実際の試験問題とは異なります。
解答と解説
答えは5. olddefconfig : 「.config」にある現在の設定をデフォルトの値で上書き です。
正しくは、olddefconfig : 提供された「.config」をベースとして現在の設定を更新し、新しいシンボルはデフォルトの値を適用となります。
使用するLinuxディストリビューションによっては、yumやaptなどのパッケージ管理ツールによってソフトウェアだけでなくカーネルも更新が可能ですが、最新のLinuxカーネルを試す場合や特定の機能を検証する場合などにはソースコードからの導入を行う必要があります。
その際にはmakeによるターゲットを指定して、Linuxカーネルをコンパイルする必要がありますが、その時に自身のLinux環境に合わせ使用可能なmakeのターゲットを選択しなければなりません。
問題に出題されたもの以外にも、以下のターゲットがあります。
clean : 設定と一部のファイルを除くほとんどのファイルを削除
mrproper : 設定を含む作業中に生成された全てのファイルを削除
menuconfig : メニューベースで現在の設定を更新
oldconfig : 提供された「.config」をベースとして現在の設定を更新
modules : 全てのモジュールを構築
modules_install : 全てのモジュールをインストール
なお、makeのターゲットについては「https://www.kernel.org/doc/makehelp.txt」で一覧を確認出来ます。
また、ご存知の方も多いとは思いますがLinuxカーネルは、1991年にフィンランドのヘルシンキ大学の学生であったLinux Torvaldsが開発(当時のバージョンは0.01)しました。
誕生から26年が経過した現在ではその開発は世界規模で継続的に行われていて、ソースコードは「https://www.kernel.org/」で公開されておりますので、Linuxカーネルについて学ぶ際には一度確認しておくといいでしょう。
例題作成者
LPI-Japanアカデミック認定校「Zeus IT Camp」
LPICレベル3認定者 鯨井 貴博 氏