FreeBSD QandA 702
Q. lkm(4) または kld(4) に関係した問題で、CD-ROM をマウントしようとして
# mount -t cd9660 /dev/cd0a /cdrom
を実行すると、OS がリブートしてしまいました。また、MSDOSFS や NFS 及
びその他のモジュールでも起り得る現象で、もちろん現象としてはリブート
するとは限らず予測不能です。
A. FreeBSD 2.2.X-RELEASE までの LKM (Loadable Kernel Module)、または
3.0-R で登場して 3.1-R 以降 LKM と置き換えられた KLD (Dynamic Kernel
Linker) を使用している場合、カーネルにコンフィグファイルの修正以外の
変更を加えると、カーネルと LKM / KLD との不整合が生じることがあります。
以下の点を確認してください。
(1) カーネルのコンフィグファイルに、以下の行はありますか。
なければ、LKM または KLD を使用していることになります。
options "CD9660" #ISO 9660 filesystem
(2) 最近、カーネルソースに、コンフィグファイルの修正以外の変更を加え
ましたか。例えばパッチを当てた場合や CVSup した場合などもこの
ケースに該当します。
(1) が no、(2) が yes の時は、次の作業を行ない、LKM または KLD を作り
直してください。/usr/src 以下には最低限のカーネルソース (src/ssys.*
配布ファイル) が展開されているものとします。
a) LKM (2.2.X-RELEASE)
$ su
# cd /usr/src/lkm
# make clean
# make all install
LKM バイナリは /lkm にインストールされています。また関連コマンドと
して modload(8), modstat(8), modunload(8) があります。
b) KLD (3.0-RELEASE 以降)
$ su
# cd /usr/src/sys/modules
# make clean
# make all install
KLD モジュールは /modules にインストールされています。また関連
コマンドとして kldload(8), kldstat(8), kldunload(8) があります。
間違い・追加情報を見付けた場合は、
修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで
お知らせください。