Debian流カーネルコンパイル


カーネルイメージがサポートしてない特殊なデバイス等を使おうとするとカーネルの再構築が必要となる場合がある。

ここでは、Pentium II 対応の最新カーネルコンパイルする方法を解説する。


1.下準備


1-1 作業領域の確保

カーネルコンパイルは /usr/src でやるので /usr/srcの所有者.グーループをskeishi.skeishiに変更する。
$su
#chown skeishi.skeishi /usr/src -R
#exit

1-2 カーネルコンパイルに必要なパッケージのインストール

カーネルコンパイルには kernel-package が必要だ。
カーネルソースをapt-getでとってくれば 必要なパッケージを全てゲットできる。
$su
#apt-get install kernel-package
#apt-get install linux-source-2.6.16
#dpkg --purge linux-source-2.6.16
#exit


2.カーネルソースの準備

2-1 カーネルソースの取得

カーネルはkernel.orgのミラーからとってくることにした。

wgetをインストールしてない場合はインストールしておく
make menuconfg には ncurses-devパッケージが必要
fakerootが必要
$su
#apt-get install wget
#apt-get install ncurses-dev
#apt-get install fakeroot
#exit

wgetでダウンロードしてtarで展開
$cd /usr/src
$wget http://www.jp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.7.tar.bz2
$tar xvjf linux-2.6.17.7.tar.bz2
シンボリックリンクを作成
$ ln -s linux-2.6.17.7 linux

2-2 新カーネルの設定

$cd linux

現在のカーネルの設定を雛型にする
$cp /boot/config-2.6.16-2-486 .config
$make oldconfig
(適当に質問に答える)

カーネルの設定をする
$make menuconfig
Processor type and features -> Processor family -> Pentium-II/Celeron を選ぶ
Device Drivers -> Multimedia devices -> Digital Video Broadcasting Devicesで
Buget cardsってやつを全部 <M> から < > にして削除する。
コンパイル中drivers/media/dvb/ttpci/budget-av.cでエラーになる)
EXITで抜けるとセーブするか聞いてくるのでYESと答える。


2-3 カーネルコンパイル

カーネルパッケージの作成
$fakeroot make-kpkg --initrd --revision=qemuetch1.0 kernel-image modules-image
ヘッダパッケージの作成
$fakeroot make-kpkg --initrd --revision=qemuetch1.0 kernel_headers

3. 新カーネルのインストール


$cd /usr/src
$su
#dpkg -i linux-image-2.6.17.7_qemuuetch1.0_i386.deb
#dpkg -i linux-headers-2.6.17.7_qemuuetch1.0_i386.deb
#exit



このHPの内容に問題等ありましたら sけい し(skeishi@yahoo.co.jp)まで連絡願います。
戻る
sけいし発HPに戻る

inserted by FC2 system