LinuCレベル2 201試験の例題と解説
2.01.4Linuxカーネルのコンパイル
LinuCレベル2201試験の出題範囲から「2.01.4 Linuxカーネルのコンパイル」についての例題を解いてみます。
このテーマは、Linuxカーネルコンパイル時のmakeターゲットや関連ファイル・機能の有効化/無効化などが含まれます。実際に操作してみてmakeターゲットの挙動の違いやそれぞれのファイルの関係性などの理解を深めることが、おすすめの学習法です。
例題
Linuxカーネルコンパイル時に生成されたファイルを削除する、makeのターゲットはどれか。
- all
- mrproper
- oldconfig
- bzImage
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「2.mrproper」です。
Linuxカーネルのコンパイル作業は、以下の順で行います。
- カーネルの入手
- カーネル設定(.config)の作成 ※make config/menuconfigなど
- カーネルに組み込む機能のコンパイル ※make bzImage
- カーネルにモジュールとして利用する機能のコンパイル ※make modules
- "4."のインストール ※make modules_install
- "3."のインストール ※make install
- Linuxの再起動で新しいカーネルを反映
今回の例題で扱ったmake mrproperでは、コンパイル作業時に生成されたファイルとカーネルの設定ファイル(.config)などを削除します。
類似したターゲットに、"clean"や"distclean"があります。
なお、その他のmakeターゲットについては、以下で詳しく確認することが出来ます。
https://www.kernel.org/doc/makehelp.txt
また、以下のブログでは作業時のログを含めLinuxカーネルコンパイルを紹介しているので、よければご覧ください。
https://www.opensourcetech.tokyo/entry/20200724/1595576656
例題作成者
鯨井 貴博 (LinuCエヴァンジェリスト/登録インストラクター、LPI-Japanアカデミック認定校 Zeus IT Camp)