2009年4月29日にNetBSD 5.0 がリリースされた。
まずは、ソースツリーのアップデートを行う。
cvs update -PdAC -rnetbsd-5-0-RELEASE
5.0 から GENERIC カーネルが MP になった。
4.0.1 のときには、 MP のカーネルで LKM の PF を使う場合には
-D MULTIPLOCESSOR を指定して /usr/lkm/pf.o を作り直さないといけなく、
面倒なので PF はカーネルオプションの方で指定していた。
5.0 ではその必要がなく、GENERIC カーネルのままで MP も PF もいけるということだ。
とはいえ、PF 経由のリモートから作業している環境で、
ユーザーランドが 4.x のまま 5.0 のカーネルでリブートすると、
はまるのは必至なので、
まずは PF を組み込んだカーネルを作成する。
カーネルコンフィグ
include "arch/i386/conf/GENERIC" pseudo-device pf # PF packet filter pseudo-device pflog # PF log if
カーネルの作成~リブートまで
$ cd <srcdir> $ ./build.sh -O <workdir> tools kernel=<kernel_conf_name> $ cd <workdir>/sys/arch/i386/compile/<kernel_conf_name> $ sudo make install <reboot> $ cd <srcdir> $ ./build.sh -O <workdir> -U distribution $ sudo ./build.sh -O <workdir> -U install=/ $ EDITOR=vi sudo etcupdate -al -s <srcdir> $ sudo postinstall -s <srcdir> -d / fix obsolete <reboot>