kernel recompilation。
ディストリビューターから配布されている、カーネルパッケージを用いてカーネルを再構築する手順。
ソースパッケージ名は、バージョンが低ければ、kernel-image、高ければlinux-image。
以下では、linux-image-2.6.15について。
0.必要なパッケージの用意(無駄なものも含まれている可能性アリ)。
sudo apt-get install build-essential bin86 kernel-package
sudo apt-get install libqt3-headers libqt3-mt-dev make
sudo apt-get install gawk
1.カーネルソースをapt-get。
sudo apt-get install linux-source-2.6.15
/usr/src/に、linux-source-2.6.15.tar.bz2が保存される。
2.移動して解凍。
cd /usr/src/
sudo tar -xvjf linux-source-2.6.15.tar.bz2
3.シンボリックリンクを張る。
sudo ln -s /usr/src/linux-source-2.6.15 /usr/src/linux
4.もしPC-MM2-5NEユーザーならば、radeonドライバを使用するためにefficeonパッチを当てる(2.6.15〜16用)
/usr/src/linuxにて。
sudo patch -p1 < efficeon-patch.txt
5.現行kernelの、configをパクってくる。
sudo cp /boot/config-2.6.15-26-386 .config
6.configを、構築するkernelに合わせる。
sudo make oldconfig
7.GUIでconfigを設定
sudo make xconfig
特に、CPUの種類の選択に注意。
In "Processor type and features":
-Processor family Choose the model of your processor.
この項目もチェック
-High Memory Support
--off -if you have less than 1 GB of RAM
<2.6.15あたりのverに限り>
In Device Drivers
- USB support - USB Network Adapters
uncheck "USB ZD1211 based wireless device support"
(*このチェックを外さないと、エラーがでて、途中で止まる)
5.コンパイル
sudo make-kpkg clean
sudo make-kpkg -initrd --revision=custom01 kernel_image
/usr/src/に、debパッケージができあがる。
6.パッケージのインストール
sudo dpkg -i kernel-image-2.6.15.7-ubuntu1_custom01_i386.deb
これで、kernelのインストールまでは終了する。
ただし、このままでは、Usplash(grubの後に、読み込んだモジュール等を表示するアレ)が表示されないので、以下のように細工。
/etc/mkinitramfs/modulesに、以下の4行を書き込む。
capability
vesafb
fbcon
unix
その後、以下のようにタイプ。
sudo dpkg-reconfigure <自分が構築したkernelパッケージの名前>
なお、prism54ドライバを使用する無線LANは、再構築したkernelだと何故だか認識されない。
http://prism54.org/から、1.0.4.3.armをダウンロード。isl3890にリネームし、/lib/firmwareに置いて再起動すると解決。