LPICに対応しています。一般的なLinuxユーザーレベルのトピックは省略し、システム管理とサーバ管理の内容を取り上げています。LPIC対策だけでなく、関連するトピックについて系統的な理解を問う問題も出題しています。連載の特徴は、対象となるプログラムのバージョンを可能な限り明記していること、比較的新しくまとまった解説がまだ少ないトピック、重要だが理解しにくいトピックを優先して取り上げていることです。問題を解き、その解説を読むことにより実践でLinuxを活用できる力を身に付けます。【1】このトピックに関連した設定や試験問題を解く際には、以下の項目がポイントになります。【1】カーネルコンフィグレーションの概要を把握しておくカーネル(kernel:核)はシステム起動時にメモリにロードされ、その後メモリに常駐し、CPUやメモリなどシステム資源の管理やデバイスの制御、プロセスのスケジューリングなどを行う、文字どおりにLinuxオペレーティングシステムの核となるプログラムです。カーネルは一般的に、/bootディレクトリの下に「vmlinuz」あるいは「vmlinuz-バージョン名」(例:/boot/vmlinuz-2.6.23.1-42.fc8)のファイルに格納され、システム起動時にGRUBやLILOなどのブートローダによってメモリにロードされます。システム立ち上げ後、必要に応じて動的にカーネルのアドレス空間にロードされるモジュールがあり、これは「/lib/modules/カーネルバージョン」(例:/lib/modules/2.6.23.1-42.fc8)ディレクトリの下に、種類ごとにサブディレクトリで分類され置かれています。module)あるいは単にモジュールと呼ばれます。このカーネル、あるいはローダブルモジュールを作り直す作業がカーネルコンフィグレーションです。カーネルコンフィグレーションは、カーネルの機能追加や不必要な機能の削除、またハードウェア構成変更に伴うデバイスの追加や削除に対応するために行います。カーネルコンフィグレーションには、カーネルのソースと、ソースをコンパイルするためのユーティリティが必要なので、これを用意します。8の場合は、RPMパッケージとしてのmake、gcc、binutilsなどを、インストールする必要があります。Linuxディストリビューションによっては、インストールCD/DVDにカーネルソースコードが含まれている場合と含まれていない場合があり、最近は含まれていない場合が多いようです。8カーネルのソースパッケージをダウンロードして、インストールしましょう。kernel-2.6.23.1-42.fc8.src.rpm-Xen非対応のカーネルソースkernel-xen-2.6-2.6.21-2950.fc8.src.rpm-Xen対応のカーネルソースまた、カーネル開発プロジェクトのサイトから、Linuxディストリビューションによってカスタマイズされていない、オリジナルのカーネルソースをダウンロードして使うこともできます。Torvalds)氏をはじめ、たくさんの開発者が寄与したGPLを基に開発・配布されているオープンソースの典型であり、壮大なプロジェクトであることが実感できるでしょう。手順の概要(1)ダウンロードしたカーネルソースは一般的には/usr/srcの下に展開します(空き容量さえあれば、どこのディレクトリでも問題ありません)。-(2)ソースを展開したディレクトリに移動します。usrこのディレクトリの下に、種類ごとにサブディレクトリに分類されてソースコードが置かれています。コンフィグレーションの手順はこのディレクトリの下のMakefileとそこからincludeされた複数のファイルに記述されており、それをmakeコマンドで実行します。(3)makeコマンドを実行します。installなど、makeの引数で指定し、順番に実行していきます。引数として指定するmrproper、bzImage、installをmakeのターゲットと呼びます。新しいカーネルの構成を記述したコンフィグレーションファイル.configを作る。以前のコンフィグレーションで生成されたファイルを削除する。.configを基に関連ファイルを設定する。カーネルを/bootの下にインストールするこの結果、最終的に/bootの下に新しいvmlinuzが作られ、/lib/modulesの下にカーネルバージョンのディレクトリができて、その下にローダブルモジュールが置かれます。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。