森といいます。

外付け USB HDD に FreeBSD 9.0-RELEASE をインストールしたの
ですが起動がうまくいきません。どうしたらよいでしょうか。

起動時に FreeBSD をインストールした HDD を指定すると、カー
ネルが読み込まれた後、デバイスを認識するメッセージが出ます
が、途中でエラーが出て停止し、root file system を指定する
ようにメッセージとプロンプトが表示されます。そこで、root
file system を指定すると処理は続行し、以降は正常に動作します。

USB 起動に対応していない少し古い PC (FMV W630)なので、Plop
Boot Manager v5.0 の起動 CD を作成して、それ経由で起動する
ようにしています。

ちなみに、その外付け USB HDD を、べつの PC (こちらは USB
起動に対応しています) に接続した場合は、正常に起動します。
BIOS で USB HDD を指定した場合も、Plop Boot Manager 経由で
指定した場合も同様に起動します。

なので、インストールそのものは正しく行われたものだと思って
います。

途中で停止する場合のメッセージは以下のようになります。

--- ここから ---
(略)
Trying to mount root from ufs:/dev/da0p2 [rw]...
mountroot: waiting for device /dev/da0p2 ...
da0 at umass-sim0 bus 0 scbus2 target 0 lun 0
da0: <Hitachi HDS721050CLA662 > Fixed Direct Access SCSI-4 device
da0: 40.000MB/s transfers
da0: 476940MB (976773168 512 byte sectors: 255H 63S/T 60801C)
Mounting from ufs:/dev/da0p2 failed with error 19.

Loader variables:
  vfs.root.mountfrom=ufs:/dev/da0p2
  vfs.root.mountfrom.options=rw

Manual root filesystem specification:
  <fstype>:<device> [options]
      Mount <device> using filesystem <fstype>
      and with the specified (optional) option list.

    eg. ufs:/dev/da0s1a
        zfs:tank
        cd9660:/dev/acd0 ro
          (which is equivalent to: mount -t cd9660 -o ro /dev/acd0 /)

  ?               List valid disk boot devices
  .               Yield 1 second (for background tasks)
  <empty line>    Abort manual input

mountroot>
--- ここまで ---

ここで、root file system として、ufs:/dev/da0p2 もしくは
ufs:da0p2 を指定すると以下のように続行します。

--- ここから ---
mountroot> ufs:da0p2
Trying to mount root from ufs:da0p2 []...
bge0: link state changed to UP
(略)
--- ここまで ---

疑問なのは、loader variables として表示されている root file
system は ufs:/dev/da0p2 と正しそうなものが表示されているこ
とです。

そこで、mountroot> のプロンプトに対して '?' を入力してみる
と以下のようになりました。停止時のリストの中にはUSB HDD に
相当する da0 が見当たりません。ところがコマンドとして '.'
を一度実行した後は da0 と関連パーティションの情報が見えて
います。

--- ここから ---
mountroot> ?

List of GEOM managed disk devices:
  iso9660/Plop Boot Manager 5.0.13 ada0s1 cd0 ada0 fd0

mountroot> .

mountroot> ?

List of GEOM managed disk devices:
  gptid/3c543bcc-4ce1-11e1-b394-00300580ad56
gptid/3c528ccb-4ce1-11e1-b394-00300580ad56 ufsid/4f294c7c70e49616
gptid/3c519917-4ce1-11e1-b394-00300580ad56 da0p3 da0p2 da0p1 da0
iso9660/Plop Boot Manager 5.0.13 ada0s1 cd0 ada0 fd0
--- ここまで ---

パーティションテーブルはインストーラのデフォルトである GUID
(GPT) にしていたので、念のために MBR パーティションで作り直
したものでも試してみたのですが、状況は同じでした。(ファイル
システムのデバイス名が変わっただけ)

エラーを出して停止せずに、リトライしてくれるだけで何とかなり
そうな気はします。

とりあえず、入力待ちで停止せずに最後まで立ち上がってくれれば
良いのですが、何か対処方法はないでしょうか?


メールによる返信