答案1
显然,EFI 实现缺乏持久加载器存储。这是 VirtualBox 等的已知限制,但我不确定 FreeNAS 是否在后台使用了它。无论如何,操作系统的加载器是在安装期间配置的,但 EFI 会“忘记”它并返回到 EFI shell。
您可以通过安装 rEFInd 或类似的引导程序并确保其在 EFI 系统分区上的可执行文件名为 来解决此问题EFI\BOOT\BOOTX64.EFI
。当 EFI 中没有保存任何加载程序时,这是 x64 系统的默认加载程序路径。
您还可以摆弄内核的 EFI 存根并尝试将内核本身放在该路径下。initramfs
也需要去那里。更新会很棘手,我将把它留给您(自己或在 Arch wiki 的帮助下)作为练习。
第三个选项是创建一个startup.nsh
启动适当加载器的 EFI shell 脚本。除非被中断,否则 Shell 将在启动时解释此脚本。
答案2
问:“还有人经历过这样的事吗?“
答:是的。我读过TrueNAS-12.0-U2.1 CORE
。TrueNAS VM 使用 bhyve 虚拟机软件。未找到安装介质时启动了 UEFI 交互式 shell。我已将安装介质放入系统磁盘上的目录中
/export/ISO/images/freebsd/12.2/FreeBSD-12.2-RELEASE-amd64-dvd1.iso
然后将这个路径复制粘贴到虚拟机的配置中。显然这不是正确的方法。安装介质的路径应该在配置窗口的点击菜单中可用。但是,系统磁盘(即/export
我示例中的目录)在点击菜单中不可用。只有/mnt
和选定的 ZFS 池可用。
当我在选定的池中创建一个新的 ZFS 数据集时,问题就解决了,例如
pool1/ISO 1047828875 3881541 1043947334 0% /mnt/pool1/ISO
并将安装介质放入此目录,例如
/mnt/pool1/ISO/FreeBSD-12.2-RELEASE-amd64-dvd1.iso
然后,这个 ISO 路径在点击菜单中可用,选择后,VM 会启动它。在 VM 设备中,change device order
当然需要从 CD 启动(安装后将其更改为磁盘)。