Debian GNU/LinuxでのLinuxカーネルコンパイル
日常的にやっているカーネルコンパイルという作業ですが,ひとによっていろいろな作法があるようです.
私の実施している手順をメモしてみました.
間違いなどありましたら,作者まで御連絡ください.
ダウンロード
www.kernel.orgのミラーからlinux-xx.xx.xx.tar.bz2を取得するか,kernel-source-xx.xx.xxパッケージを取得してください.
kernel-sourceパッケージは/usr/src/に.tar.bz2ファイルを配置します.
展開と設定
-
一般ユーザで適当なディレクトリ,例えば ~/kernel/バージョン番号
のようなディレクトリを作成し,そこに移動します.(mkdir, cd)
-
tar xfj linux-xx.xx.xx.tar.bz2 のようにして,カーネルソースを展開します.
-
cd linux-xx.xx.xx/
としてディレクトリに移動します.
-
cp /boot/config-xx.xx.xx(今動いているカーネルの設定ファイル) .config
として,現在の設定をデフォルトの設定とします.
-
make oldconfig として,エンターを連打してとりあえずそれっぽい設定に
してもらいます.(このステップを実施しないと,コンパイルの際にエラーが発生することがあります)
-
make menuconfigとして,詳細な設定を変更します.(このステップは実際は実施しなくても良い場合もあります)
モジュール
余分なカーネルモジュールが必要無いのなら,このステップは省略可能です.
- Debian の適当なモジュールソースパッケージをインストールします.
- /usr/src/xx.tar.bz2のような名前になるので,それを
cd ~/kernel/してからtar xjf /usr/src/xx.tar.bz2のようなコマンドで展開します.
~/kernel/modules ディレクトリが作成されます.
- 環境変数 MODULE_LOC をそのディレクトリに設定します.
export MODULE_LOC=~/kernel/modules
コンパイルとインストール
- 一般ユーザ権限でカーネルのソースディレクトリ
(~/kernel/xx.xx.xx/linux-xx.xx.xx/ディレクトリ)
に移動し,
make-kpkg --rootcmd fakeroot --revision Custom.1.0 kernel_image modules_imageコマンドを入力,カーネルをコンパイルさせます.
-
root権限になり,
dpkg -i ../*.debでパッケージをインストールします.
警告は無視します.
-
必要ならgrubの設定をします.
-
リブートしてみて起動するかどうか確認します.
Junichi Uekawa
$Id: kernelcompile.html.ja,v 1.4 2005/01/20 10:29:43 dancer Exp $