FreeBSD PAE の GEOM モジュールの難点 ― 2014年07月17日 12時36分58秒
そこで、 GEOM 関連のカーネルモジュールも作る必要がある。どうも GEOM 関連のモジュールはややこしい。
md はデバイスの扱いで、device md
してカーネルに組み込める。カーネルモジュールとして扱う場合は MODULES_OVERRIDE='md'
のようにして、md
と指定すると geom_md
が作成される。これがカーネルに読み込まれて、kldstat -v
で点検すると、g_md
と言う名前で登録されている。denice md
は GEOM よりも前からあった名残だと思われる。
それ以外の GEOM クラスは、単独のカーネルモジュールは作れないようだ。MODULES_OVERRIDE='geom'
の様にして geom を指定すると、全ての geom クラスが作られる。GEOM クラスをカーネルに組み込むには options を用いる。options GEOM_MIRROR
の様に GEOM_ を前置詞として、クラスの名前が続く。ただし前述のように md だけは特別で、options GEOM_MD
とやるとコンパイルエラーとなる。
加えて、/boot/kernel 以外から起動しようとすると unload
で第三ローダが読み込んだモジュールを廃棄しなければいけない。そのため、/boot/loader.conf が無効になっている。手動で load /boot/PAE/geom_uzip
の様に読み込んでおなかいと、特に mount の段階で全ての GEOM モジュールが自動で読み込まれるわけではない。これに対応するには、/boot/kernel
に通常のカーネルとしてインストールするか、options
を使ってカーネルに組み込むのが良いようだ。
最近のコメント