NetWalker(PC-T1)のカーネル再構築

 NetWalker(PC-T1)にはlzo_compress.ko, lzo_decompress.koというカーネルモジュールがないので、PC-Z1と同じようにcompcacheが使えません。そのため、compcacheが使えるようにカーネルを再構築しました。

以下の作業でcompcacheは使えるようになったのですが、無線LANのドライバを入れ忘れてしまったらしく無線LANが使用できない状態になります。修正して再度挑戦する予定ですので、実施する人は注意してください。
2012-02-24 無線LANも使えるようになりました。

カーネル再構築に必要なパッケージのインストール

 カーネルをビルドする際に必要なパッケージをインストールします。既にインストールされていれば必要ありません。

$ sudo aptitude install build-essential libncurses5-dev

カーネルソースのダウンロードと展開

 カーネルのソースファイルをダウンロードし、展開した後/usr/src/linuxに移動します。

$ wget http://netbook-remix.archive.canonical.com/updates/pool/public/l/linux-fsl-imx51/linux-fsl-imx51_2.6.28-19.61fsl1sendai25.tar.gz
$ tar xvzf linux-fsl-imx51_2.6.28-19.61fsl1sendai25.tar.gz
$ sudo mv build /usr/src/linux-2.6.28-19-sendai
$ cd /usr/src
$ sudo rm linux # ←初回なら必要ない
$ sudo ln -s /usr/src/linux-2.6.28-19-sendai /usr/src/linux

カーネルの設定

 今の設定をコピーし、それに追加してLZO圧縮・展開をモジュールとしてビルドするように設定します。

$ cd /usr/src/linux
$ make mrproper
$ zcat /proc/config.gz > .config
$ vi Makefile
EXTRAVERSION= .10

EXTRAVERSION= -19-sendai-20120224
$ make menuconfig
 ここで、"-*- Cryptographic API --->"の中で" LZO compression algorithm"とし、LZO圧縮・展開モジュールを使用するようにしました。

カーネルのビルド

 さて、カーネルのビルドです。かなり時間がかかります。ビルドが終わったらカーネルモジュールをインストールします。

$ make dep && make clean
$ make zImage && make modules
$ sudo make modules_install

カーネルのコピー

 今ビルドしたカーネルを起動時に実際に使われるように/bootの下とフラッシュメモリ(SSD?)にコピーします。koxudaxiさんの記事のPC-T1のカーネル書き込み方法だとうまくいかないと思われます。

$ sudo cp arch/arm/boot/zImage /boot/vmlinuz-2.6.28-19-sendai-20120224
$ sudo cp .config /boot/config-2.6.28-19-sendai-20120224
$ sudo cp System.map /boot/System.map-2.6.28-19-sendai-20120224
$ mkinitrd -f /boot/initrd.img-2.6.28-19-sendai-20120224 2.6.28-19-sendai-20120224
$ sudo mkdir /kernel # ←初回のみ必要
$ sudo mount -t vfat -o rw /dev/sda1 /kernel
$ sudo mv /kernel/zImage /kernel/zImage.20120224
$ sudo cp arch/arm/boot/zImage /kernel/zImage

無線LANドライバ(unifi_sdio)のコピー

2012-02-24追記しました。
現在使われている無線LANのドライバを新しいカーネルのモジュールディレクトリにコピーします。

$ sudo cp -R /lib/modules/2.6.28-19-sendai/extra /lib/modules/2.6.28-19-sendai-20120224/

再起動

 新しいカーネルで起動するために再起動します。

$ sudo reboot

カーネルモジュールの依存関係の更新

$ sudo depmod -a

無線LANの準備

 一度無線LANをOFF・ONすると無線LANが使えるようになります。