UEFI起動が有効になっているホストからPXEを介してmfsBSD ISOを起動しようとしています。
BIOSブートは非常に簡単な作業です。これを行うためのipxe設定は次のとおりです。
kernel --name freebsd http://pxe.host/memdisk
initrd http://pxe.host/mfsbsd.img
imgargs freebsd harddisk raw
boot
UEFIブート方式はmemdisk方式をサポートせず、mfsBSDを直接起動できる他の方法もないようで、まずGRUB2起動に切り替えました。
kernel --name grub2 http://pxe.host/grub2.efi
boot
そこからmfsBSD ISOを起動しようとしていますgrub.cfg
。
insmod efinet
insmod tftp
insmod loopback
insmod iso9660
insmod ufs2
insmod part_msdos
insmod gfxterm
insmod vbe
menuentry "mfs12.1.iso" {
set isofile=(tftp)/mfs12.1.iso
loopback loop $isofile
echo "ISO mounted"
set root=(loop)
kfreebsd /boot/kernel/kernel.gz
echo "kernel loaded"
kfreebsd_loadenv /boot/device.hints
kfreebsd_module /boot/kernel/ahci.ko
echo "ahci.ko loaded"
kfreebsd_module /mfsroot.gz type=mfs_root
set kFreeBSD.vfs.root.mountfrom="ufs:/dev/md0"
echo "set kFreeBSD.vfs.root.mountfrom"
set kFreeBSD.mfs_type="mfs_root"
echo "set kFreeBSD.mfs_type"
set kFreeBSD.mfs_name="/mfsroot"
echo "set kFreeBSD.mfs_name"
set kFreeBSD.mfsbsd.autodhcp="YES"
echo "set kFreeBSD.mfsbsd.autodhcp"
}
kFreeBSD.vfs.root.mountfrom
結果なしで変更を試み、"cd9660:/dev/md0"
別のバージョンのmfsBSDを試して、このソリューションを使用してEFIサポートISOを構築しました。https://github.com/mmatuska/mfsbsd/pull/100
この設定で何か抜けましたか?どんな助けでも本当に感謝します。
答え1
物事がうまくいかないのは確かですか?ネットワーク経由で接続してみましたか?
見たらGRUBマニュアル検索してみると、amd64 EFI
ヘッドレスブートのみサポートしていることがわかります。あなたのスクリーンショットを通して可能これでシステムが正常に起動しました。ただし、画面にコンソール出力が表示されるとは思わないでください。
独自のmfsBSDバージョンを構築したり、ISOイメージにパッチを適用したりする場合は、nullconsole
次の設定を試してみてください。comconsole
/boot/loader.conf
console=nullconsole
...コンソールなし - または使用シリアルコンソール使用
console=comconsole
それとも見てください2.12 高度な設置ガイド
すべてがユーザーのために作られているので、mfsBSDの使いやすさを理解しています。しかし、Grubを完全にスキップしてFreeBSDで直接起動することは、実際にはそれほど難しくありません。唯一の迷惑は、始めるにはどこかでNFSを実行する必要があるということです。
文書を見ると31.8。 PXEを使用したディスクレス操作- DHCP サーバーの構成例を表示できます。 UEFIブートのためにこれを変更するのは簡単です。
# path of boot loader obtained via tftp
filename "loader.efi";
# pxeboot boot loader will try to NFS mount this directory for root FS
option root-path "192.168.0.1:/tftproot/FreeBSD/" ;
/boot/loader.efi
したがって、FreeBSDをTFTPサーバーにコピーすると、すぐに正しいローダーで起動します。ネットワーク経由でNFSを介してカーネルをインポートするAFAIKloader.efi
はまだサポートされています。pxeboot(8)これはTFTPを使用してさらに達成できます。しかし、NFSがあれば設定はとても簡単です。これについてもっと読むことができます。ディスクレス(8)
デフォルトでは、一般的なNFSルートディレクトリが提供されています。しかし、能力があれば、ストレージディスクで作業することはまったく難しくありません。17.9。メモリディスクそしてマルチファイルシステム(8)。mdmfs
サポートによってgeom_uzip必要に応じて簡単に変更できる美しい画像を含めることができます。
今後の道については、すでに仕事を始めました。UEFI HTTP ブートサポートNFSの代わりにHTTP経由でサービスを提供したい場合は、操作が簡素化されます。しかし、これはまだ新しくて光沢があります。
持つその他のレポートUEFI、Grub、および mfsBSD を使用して実行中の設定と同じ問題が発生しました。
再:私はmfsBSDイメージの使いやすさを理解しています。私は代わりの道があることを示したかっただけです。運が良ければ、Grubの経験がより多くの人がより良い答えを提供することができます。