2008年10月に、i386系ではkernel moduleをサポートするようになった。kernel moduleをサポートしていない環境から新たにアップデートするためには、通常の単純なbuild.shの仕組みでは足りない。ここでは、5.0.1から2010年1月時点のcurrentにアップデートする際の手順をここを参考にしつつ整理してみた。
cd /usr/src
./build.sh -T /usr/tools -O /usr/obj -U -u tools kernel=GENERIC build
cd /
mv netbsd netbsd.old
cp /usr/obj/sys/arch/i386/compile/GENERIC/netbsd .
cp /usr/obj/destdir.i386/usr/mdec/boot /
installboot -v /dev/rwd0a /usr/obj/destdir.i386/usr/mdec/bootxx_ffsv1
(bootxx_ffsv1かbootxx_ffsv2かは、dumpfsコマンドで調べられると書いてあるが、自分の環境では表示されなかった。)
mkdir /stand/i386/5.99.23 (5.99.23はbuild.shの終了時に表示されるversion)
cp -r /usr/obj/sys/modules /stand/i386/5.99.23
あとはrebootして、通常通りユーザランドのインストールを行えば良い。
こんなやり方もありらしい。
通常でれば、NetBSD Daily Buildから最新版のsnapshotを持ってきて利用する方が安心。