7.0-RELEASEにしたらルートパーティションの空き容量がなくなった件について
webサーバとして使用しているマシンを7.0-RELEASEにした。
古いマシンなので、ソースからのアップデートは出来ず、ISOイメージを使ってさっさと終わらせたのだが、ふと気がつくとルートパーティションの容量がぎりぎりになっている。
これは、7.0-RELEASEからカーネルとカーネルモジュールのシンボルファイルもインストールされるようになったため。
$ uname -a FreeBSD blue.local 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Sun Feb 24 19:59:52 UTC 2008 root@logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 $ du -sh /boot/kernel 112M /boot/kernel
というように、/boot/kernelで100M超。
シンボルファイルによって、何か障害があったときの原因究明を行いやすくするためだが、6系以前の感覚でいると、ルートパーティションの容量がまったく足りない。
自分で調査もしないし、バグレポートを出すつもりもない場合には必要ないので、/boot/kernel配下の*.symbolというファイルをすべて削除すればよい。
あるいは、カーネルコンフィグファイルの以下の行をコメントアウトしておけば、次回以降のカーネルビルドでシンボルファイルが作られなくなる。
makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
あるいは/usr/src/UPDATINGの以下記載を参照のこと。
20060118: This actually occured some time ago, but installing the kernel now also installs a bunch of symbol files for the kernel modules. This increases the size of /boot/kernel to about 67Mbytes. You will need twice this if you will eventually back this up to kernel.old on your next install. If you have a shortage of room in your root partition, you should add -DINSTALL_NODEBUG to your make arguments or add INSTALL_NODEBUG="yes" to your /etc/make.conf.