kernel

kernelの再構築

FreeBSDを使っているとkernelの再構築が必要になることがあります。 また、起動を速くしたりメモリを有効に使うためにも、 不必要なデバイスを削除して再構築することは一度は挑戦してみたいところです。 しかしこれは、初心者には敷居が高いことも事実です。 ここでは、kernelの再構築を解説します。

参考になる本:Unix User Vol.6 No.10 OCT.1 1997 "FreeBSD 利用法入門"


kernel再構築の基本

まず、rootになります。次ぎに/usr/src/sys/i386/conf に移動します。 そこにある、GENERICをそのままコンパイルすると、/kernel.GENERICになるはずです。 オリジナルを残してコピーをとります。
#cp GENERIC NEW
NEWの方を修正します。修正が終ったら、
# config  NEW
Kernel build directory is ../../compile/NEW
# cd ../../compile/NEW
# make depend
# make
以上でコンパイルは終了です。次ぎに
# cp kernel /kernel.NEW
# cd /
# ln -f kernel.NEW kernel

として、ブートできるようにハードリンクを張ります。
リブートします。
# reboot
もし、正常にブートしなかった場合は、
Boot: /kernel.GENERIC
として、GENERICからブートし、NEWを修正します。

kernelの修正

kernel と dmesg は < > の間が表示されていません。

GENERICは、一般的環境を包含した設定になっているため、

scd0: disabled, not probed.
ie0: disabled, not probed.
ie1: disabled, not probed.
のように使用されていない機器までも認識しようとします。 これは、メモリなどの無駄なのでkernelから削除します。 また、PS/2マウスを使っている場合以下のようにするとよいでしょう。
変更前:
device          psm0    at isa? disable port "IO_KBD" conflicts tty irq 12 vector psmintr
				^^^^^^^
変更後:
device          psm0    at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
これで、ブート時に、
Boot: -c
をすることなく、PS/2マウスが使用できるようになります。

topへ