FreeBSD QandA 702

FreeBSD QandA

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 まで お知らせください。