NetBSDカーネル再構築

適当なNetBSDのミラーFTPサイトからカーネルのソースをダウンロードする。これにはi386以外も全て含まれている。

$ wget ftp://ftp.dti.ad.jp/pub/NetBSD/NetBSD-3.0/source/sets/syssrc.tgz

/usr 以下にカーネルのソースを展開するので、予めスーパユーザになっておく。ルートに移ってから展開するようにしているが、展開後もカレントディレクトリは変わらない。

$ su
# gzip -dc syssrc.tgz | (cd / ; tar xvf -)

カーネルのコンフィグファイルがあるディレクトリに移動し、GENERICカーネルのを元にCardBusの項目を無効(コメント化)したものを作ってみる。

# cd /usr/src/sys/arch/i386/conf/
# cp GENERIC GENERIC_NOTCB
# vi GENERIC_NOTCB

カーネルコンパイルに必要なファイルを生成して、指示された通りにディレクトリを移動し、コンパイルを開始する。

# config GENERIC_NOTCB
# cd ../compile/GENERIC_NOTCB
# make depend
# make

カレントディレクトリにnetbsdの名前で新しいカーネルが出来上がる。例えば、現在のカーネルを保存して入れ替えるには以下のように操作する。

# mv /netbsd /netbsd.old
# mv netbsd /
# reboot