さまざまなLinuxイメージをマルチブートするためにUSBキーを設定しました。 FreeNASを追加しても大丈夫です。文書サンプルを追加してgrub.cfg
menuentry "FreeNAS-8.0.4-RELEASE-x64" {
insmod ufs2
insmod iso9660
# /usr/local/sbin/grub-probe -d /dev/sde1 -t fs_uuid
# c89c-7b3a
#search --no-floppy --fs-uuid --set c89c-7b3a
set isofile="/boot/FreeNAS-8.0.4-RELEASE-x64.iso"
loopback loop $isofile
kfreebsd (loop)/boot/kernel/kernel.gz
kfreebsd_loadenv (loop)/boot/device.hints
#set FreeBSD.vfs.root.mountfrom=ufs:/dev/ad4s1a
set kFreeBSD.vfs.root.mountfrom=ufs:/dev/acd0
set kFreeBSD.vfs.root.mountfrom.options=rw
#set vfs.root.mountfrom=cd9660:/dev/ad1s1
#set vfs.root.mountfrom.options=rw
}
ブートしようとした結果、vfsのルート設定について少し自信がありません。
いくつかの有用な情報は以下にあります。 grub2 USBスティックからFreeBSD isoを起動します。
答え1
USBフラッシュドライブから起動しようとしているため、デバイスはdaで始まります。出力で/ dev / da0として検出されていることがわかります。デバイスの分割方法によっては、/dev/da0s1aまたは/dev/da0a(bsdlabelがない場合)のように見える場合があります。
問題は、システムによっては、すべてのケースでda0を検出できない可能性があることです。 daはscsiデバイスにも使用され、USBメディアリーダーもda *デバイスとして表示されます。ブートできる場合、回避策はGEOMラベル機能を使用してマウントポイントに「名前を付け」、fstabを変更して名前で参照することです。その時点でどのデバイスがタグ付けされているかに関係なく、常に機能します。 FreeBSD環境の詳細については、man glabelを参照してください。 (またはfreebsdマニュアルがあるウェブサイトを確認してください)
答え2
起動時にUSBドライブがまだ存在を報告していないため、カーネルが停止しているようです。あなたの構成が何であるか疑問に思います。しかし、動作せず、FreeBSDカーネルの正しい起動デバイス名を提供しません。
使用可能なドライブについてはカーネルに連絡する必要があります。メッセージが表示されたら、「?」と入力します。その後、ルートパーティションの正しいルートファイルシステム仕様を入力する必要があります。 USBドライブをどのように分割したかに応じて、ufs:/ dev / da0s1aのように見えます。
正しいドライブパスを見つけたら、そのパスにgrub.confを変更する必要があります。また、設定は自動的に無視されるため、「kFreeBSD」ではなく「FreeBSD」として読み取る必要があります。
答え3
USB初期化遅延を増やすには、ローダー変数を追加してみてください。この変数を/boot/loader.confに追加するか、起動時にメッセージが表示されたときに追加できます。または、起動メニューから「3番目」オプションを選択してUSB起動を許可することもできます。 (3回目かはわかりませんね)
set kern.cam.boot_delay="10000"
これは、起動プロセスでUSBスティックをマウントできない場合に便利です。
上記の3つのオプションはすべて同じことを行います。
幸運を祈る