カーネル再構築 2.2.21

Linux for PlayStation 2 Communityで公開されているカーネルソース2.2.21-pre1-xr7を試してみましょう。

2002.10.12 初稿

ここで紹介するやり方はBB NaviやHDDゲームとPS2Linuxを共存している環境です。
つまりPS2Linuxβ版をベースにしたものです。PS2Linux 1.0ベースの場合とHDD認識が異なりますので気をつけてください。

# cd /usr/src
# mv linux linux.org              →2.2.1_ps2へのシンボリックリンクを待避(最初だけね)

# tar zxf /var/tmp/kernel-source-2.2.21-pre1-xr7.tar.bz2 または .gz
# ln -s kernel-source-2.2.21-pre1-xr7 linux

HDDフォーマット認識がBB Navi仕様になっているので、PS2Linux仕様にパッチまたは怪しいパッチを宛てる
(このパッチは2.2.19を元に作ったので対象が若干異なってますが、一応正しくパッチ当たるので手抜き代用)
# cd /usr/src/linux
# patch -p0 < bblinux.diff

ここから先は普通のカーネル再構築
# cd /usr/src/linux
# cp -p config-xrhiro .config          →とりあえずデフォルトのカーネル設定にする
# make menuconfig                →オプションとか好きにいじる
# make dep
# make clean
# make

# make modules
# make modules_install

# mount /mnt/mc00
# gzip -c9 vmlinux > /mnt/mc00/vmlinux-2.2.21.gz →圧縮したカーネルを作成(未圧縮でコピーでも可)

# vi /mnt/mc00/p2lboot.cnf(2行目の vmlinux-2.2.21.gz のエントリを追加)
"Linux on MC" vmlinux "" 203 /dev/hda1 "" Linux on Memory Card(PS2)
"Linux 2.2.21" vmlinux-2.2.21.gz "" 203 /dev/hda1 "" Linux-2.2.21 on Memory Card(PS2)
"Single" vmlinux "" 203 /dev/hda1 single Single User Mode
"Emergency" vmlinux "" 203 /dev/hda1 emergency Emergency Mode
# umount /mnt/mc00

ps2rtc.oが増えてるので /etc/rc.d/rc.sysinitの "# load PS2 modules" のあたりに一行追加しておいた方がいいかも。
[ -f /lib/modules/`uname -r`/misc/ps2rtc.o ] && insmod ps2rtc
ところでX環境で使う人は、マウス周りを修正する必要があります。
こことか こことか ここ を参考にして作業して下さい。(あんまり試してないもんで人任せ。。。)

さて、2.2.21にすることでどう変わるんでしょう。
とりあえず気が付いたのは、
 ・2.2.19と違ってサウンドモジュールがちゃんとロードできる。(ただしPS2LinuxβのDVDから起動のときはやっぱりダメ)
 ・結構USBが行ける。USBメモリキーのマウントもできました。
 ・smbfsでマウントできる。Windows共有をマウントできるってことですね。
 ・konが使えない。。。。原因等未調査
 ・(怪しいパッチを宛てると)BB Navigatorのパーティション __linux.X (ReiserFS, ext2)がマウントできる。
なんかあったら教えて!


怪しいパッチについて

BB Navigator の "__linux.X" というIDのパーティションを認識するようになります。 →この辺の話はこっち

注意事項や使い方などはこちらにありますので必ずお読みください。


戻る