MADWIFI の件もあって、2.4 系にしてあった kernel であるが、Wireless Notebook Laser Mouse 6000 も使えるようにしたいし、2.6 へ遅ればせながら移行するか。
まずは Debian のパッケージ linux-image-2.6.15-1-686 で試す。 いつの間にか kernel-image ではなくて linux-image になっていたりと、おいていかれている感じ。 危ない危ない。
ThinkPad X31 2672-PHJ | |
サスペンド | できない |
X | ATI ドライバ OK |
サウンド | OK |
MADWIFI | 接続できるものの大きなファイルの転送は駄目 |
cpufreqd | OK |
NG。
kernel で APM と ACPI の両方が有効になっているからのようだ。 ACPI を切る必要あり。
OK。
X.Org X server 6.9.0 で ATI ドライバがうまく動かず VESA ドライバの使用を余儀なくされていたのだが、kernel 2.6 では何も問題なく動いた。
NG。
無線 LAN で使っている MADWIFI も既にパッケージがあるのか。 いい世の中になったものだ。
しかも最近は module-assistant で kernel モジュールをパッケージングできるようになっているなんて。
module-assistant prepare module-assistant auto-install madwifi modprobe -a ath_pci
接続はできるものの、一昨年試してみた時と同様 kernel 2.6 だと、大きなファイルの転送が途中で止まってしまう。
あと一歩。
OK。
modprobe speedstep_centrino /etc/init.d/cpufreqd start
やはり、kernel をビルドする必要があるか。
……気がついたら make menuconfig で設定中の画面を前に眠り込んでしまっていた。 明日にもちこし。
ThinkPad X31 に入れている Debian GNU/Linux sid でしばらく Linux kernel 2.6.23 を使っていたが、TrueCrypt 6.1a を入れたら「2.6.23 以下じゃヤバいよ」と表示されたので 2.6.26 にアップデートすることにした。 Debian 標準イメージを入れてみたが、やはり今まで通りサスペンドできないので、今回もビルドしなおし。
#apt-get build-dep linux-image-2.6.26-1-686 #apt-get install linux-source-2.6.26 aufs-source madwifi-source #exit $mkdir -p /usr/local/src/linux $cd /usr/local/src/linux $tar jxvf /usr/src/linux-source-2.6.26.tar.bz2 $cd linux-source-2.6.26 $cp /boot/config-2.6.26-1-686 .config $make menuconfig $make-kpkg clean $fakeroot make-kpkg --initrd --revision=sebastian.1.0 kernel_image $cd .. $su #dpkg -i linux-image-2.6.26_sebastian.1.0_i386.deb
最初は 2.6.23 の時のソースツリーで make menuconfig したのと見比べながら素から設定したのだが起動中 hda のハードウェアの認識(?)で止まってしまった。 なのでとりあえず起動する .config は Debian 標準イメージのものをベースにすることにした。 変更は ACPI を外して APM を追加した程度。
Debian 標準イメージは IDE も ext3 もモジュールになっていて initrd 使わないと起動できないので今回から --initrd を指定してビルドすることにした(一度忘れてビルドして起動したら何度かアチャーしたことのある kernel panic になった)。
再起動。起動後 cpufreqd が動かなかったが、modprobe speedstep-centrino したら今までどおり cpufreqd が立ち上がって省電力化できた。
次に MADWIFI をインストール。こちらも問題なく接続。
#module-assistant prepare #module-assistant auto-install madwifi
aufs は前回の方法で udba=inotify できるモジュールを作成。
TrueCrypt もテストして警告を出さなくなっていることを確認。 火曜日ぐらいから、ちんたら何度かビルドしないしながら昨日ここまで辿りついた。 めでたしめでたし。
しかし Debian 標準イメージの .config 級の設定だとビルドに1回2時間前後だったかかかるようになった(nice 下だけれど)。 トライアンドエラーしはじめるとかなり時間がかかるな。
ここ最近 ThinkPad X31 の Debian GNU/Linux sid が調子が悪い。 いろいろ調査・トライしてみている途中の状態をメモ。
アプリケーションや X の不具合などと重なって unstable 全開だ。
Linux kernel については各種パッケージの更新に追いつけなくなっているようなので、アップデートをかける必要がありそう。
Debian GNU/Linux の標準イメージを使ってみたが、ThinkPad X31 では例によって ACPI では蓋の開閉でサスペンドしない。 APM を使うようにした Debian kernel パッケージ構築が必要。 しかし今年の2月に 2.6.26 をビルドした時(記事)から、いろいろ変更があったようで一筋縄ではいかなかった。 以下は最終的な手順(たぶん)。
#apt-get build-dep linux-image-2.6.30-2-686 #apt-get install linux-source-2.6.30 aufs-source #exit $mkdir -p /usr/local/src/linux $cd /usr/local/src/linux $tar jxvf /usr/src/linux-source-2.6.30.tar.bz2 $tar zxvf /usr/src/aufs.tar.bz $emacs modules modules/aufs/Makefile $cd linux-source-2.6.30 $cp /boot/config-2.6.30-2-686 .config $make menuconfig $make-kpkg clean MODULE_LOC=/usr/local/src/linux/modules fakeroot make-kpkg --initrd --revision=sebastian.1.0 kernel_image modules_image $fakeroot make-kpkg --initrd --revision=sebastian.1.0 kernel_image $cd .. $su #dpkg -i linux-image-2.6.30_sebastian.1.0_i386.deb aufs-modules-2.6.30_0+20090302-3+sebastian.1.0_i386.deb #update-initramfs -c -k 2.6.30 #update-grub
MADWIFI はもはやコンパイルが通らなくなっていた。 試してみたところ ath5k で通信できるようになっているではないか。modprobe ath5k すると wlan0 が使えるようになった(MADWIFI の時は ath0)。
initrd 関係は結構はまった。 最初いつも通りビルドして dpkg した後再起動したのだが、"Unable to mount root fs on unknown-block(0, 0)" が出て先にすすまない。 IDE まわりや ext2、ext3 まわりを M から y にしても駄目。 何度か試しているうちに、 linux-image を dpkg --install した際に実行される update-grub のメッセージで自分で作った Linux kernel だけ initrd 関係の処理がされないことに気が付いた。 自前で update-initramfs したらようやく 2.6.30 が起動するようになった。
2.6.30 にすることで起動時の udev の警告は解消された。 しかしながらサスペンドはまだ駄目。 復帰時にフリーズする。 やはりパワー関係の処理があやしい。今は AC アダプタを外しても KPowersave は気付かない。
もう少しおっかける必要がありそう。
対応できるまではサスペンドできず。毎回起動したりシャットダウンしたりするの面倒くさーい。
Naney (なにい) です。株式会社MIXIで SNS 事業の部長をしています。
※本サイトの内容は個人的見解であり所属組織とは関係ありません。