カーネル再構築 – コンパイルとインストール
Linux LPIC編。(第1章 Linuxカーネル)
カーネル再構築の手順のメモ。
1.カーネルソースの用意
/usr/srcディレクトリ以下にカーネルソースのtarボールを配置して展開する
2.カーネルコンフィグを設定
通常のソースインストールだとここで./configureを実行してMakefileが作成される
ところだが、Linuxカーネルの場合は特別。
カーネルコンフィギュレーションのコマンドには以下の数種類がある。
make config CUIで質問に答えていく
make menuconfig CUIでメニューから選択していく
make xconfig GUIでX(KDE)で操作
make gconfig GUIでX(GNOME)で操作
※CUIならmake menuconfigが良いらしい。
3.カーネル及びカーネルモジュールのコンパイル
make
makeをターゲットなしで実行すると、上記両方が実行される。
4.カーネル及びカーネルモジュールのインストール
make modules-install
make install
make installで実行されること
・カーネルを/boot以下に、バージョンをファイル名に付加してコピーする
・初期RAMディスクが必要な場合は作成する
・ブートローダーの設定ファイルに新しいカーネル用のエントリを追加する
make installが実行出来ない場合別途手作業での作業が必要となるが、ここでは省略。
ポイントメモ・カーネルソースコードの場所は一般的には /usr/src/linux-バージョン、
Red HatやCentOSでは/usr/src/kernelsディレクトリ以下。
LPICでは/usr/src/linuxとしている。
・カーネルの設定は/usr/src/linux/.configファイルに記録される
・make oldconfigで現在のコンフィグに新しい設定を反映する。
カーネルのバージョンアップ時以外は利用しない。
makeの主要ターゲットもメモしておこう。
clean .config以外の不要なファイルを削除する
mrproper
カーネルソースツリーを初期化する。
.configやバックアップファイルも含めて不要なファイルを削除する
distclean 上記に加えてpatchが作成したファイルも削除する
defconfig デフォルト値を設定した.configを作成する
all すべてのビルドを実施
modules 動的なモジュールをすべてビルドする
rpm カーネルビルド後にRPMパッケージを作成する
rpm-pkg ソースRPMパッケージを作成する
binrpm-pkg ビルド済みカーネルとモジュールのRPMパッケージを作成
deb-pkg ビルド済みカーネルとモジュールのDebianパッケージを作成
重要そうなのはclean、mrporper、distcleanの違いかな?
最後のパッケージ関連はこんなん試験に出る?と思ったが、新出題範囲の項目に
あったような、なかったような気がしたので、一応書いておく。
次回はパッチ適用について。
出典
Linux教科書LPICレベル2(翔泳社)
LPIC記事一覧
↓ ↓ ↓
LPIC-index
Linux記事一覧はこちらをどうぞ
↓ ↓ ↓
Linux-index