mount が失敗する2007年01月31日 12時04分11秒

7.0-CURRENT を使い始めたら、すぐに異常に気が付いた。mount が失敗しているのだ。幾つかの問題がある。

一つ目は、6.1-RELEASE 以前と違い、mount に失敗しても、シングルユーザモードに移行しない事だ。7.0-CURRENT では、お構い無しに起動する。noauto が付いていない fstab の項目が失敗したら、止まった方が動作的には好みだ。マルチユーザモードで起動したところで、利用可能な状態では無いからだ。しかし、今のところ実害はない。

二つ目は、マウントに失敗していること。fstab のエラーの出ている行を見ると mount_md が失敗していた。


/dev/md.uzip            /usr/ports      md      ro,-P,-F/usr/uzip/ports-20060830
.uzip   0       0

mount に -d を付けて実行すると、プログラムの実行する動作を見られる。


$ mount -d /usr/ports
mount -t md -o ro -P -F/usr/uzip/ports-20060830.uzip /dev/md.uzip /usr/ports
$ mount /usr/ports
mount: illegal option -- P

と表示された。そこで、実際にこのオプションを mount_md に渡して試すと、何も問題なくマウントできる。

$ mount_md -o ro -P -F/usr/uzip/ports-20060830.uzip /dev/md.uzip /usr/ports
$ df /usr/ports
Filesystem           1K-blocks    Used  Avail Capacity  Mounted on
/dev/md0.uzip           886686    352456  463296    43%    /usr/ports

mount_md を直接呼び出すと、問題なくマウントできる。-P は有効なオプションだ。どうすれば、-P が無効なオプションだと見なされるのだろうか。