答案1
VirtualBox 往往会忘记其 EFI 启动项。我知道有两种方法可以解决此问题:
- 移动/重命名你正在使用的引导加载程序(可能
EFI/ubuntu/grubx64.efi
在EFI 系统分区 (ESP)) 改为EFI/BOOT/bootx64.efi
。这是默认/后备文件名,因此如果没有其他条目,VirtualBox 将默认从该文件名启动。 - 使用 VirtualBox EFI 的菜单找到您正在使用的引导加载程序(再次,可能是
EFI/ubuntu/grubx64.efi
),并将其添加为引导选项。我不记得确切的步骤,菜单也不太方便用户使用,但如果你在菜单中四处查看,选项是那里。
执行上述任何一项操作都应该能够启动 GRUB,但随后您又遇到了第二个问题,即 X 无法启动。要解决此问题,请尝试以下操作:
- 进行文本模式登录。
- 输入
sudo su
以获取root
特权。 - 输入
Xorg -configure
。这将创建一个名为/root/xorg.conf.new
(IIRC) 的文件。 - 将新创建的文件复制到
/etc/X11/xorg.conf
。 - 可选地,编辑
/etc/X11/xorg.conf
。这可能是必需的,也可能不是。就我个人而言,我编辑文件以将fbdev
驱动程序设置为默认驱动程序,但您可能更喜欢其他驱动程序。网上有很多关于 的指南xorg.conf
,但我手头没有任何 URL,而且它可能非常复杂,因此在这里完整描述它是不切实际的。
答案2
由于可以在 Virtual Box EFI 模式下安装 Ubuntu,因此可能无法按预期工作。我自己在几次失败的实验后放弃了这个,在阅读了文档到 Virtual Box:
请注意,VirtualBox EFI 支持尚处于实验阶段,随着 EFI 的成熟和普及,它将得到增强。
因此它可以正常工作,但与许多实验性功能一样,它可能无法按预期工作。
对于虚拟机来说,虚拟化 EFI 固件相对于虚拟传统 BIOS 没有任何优势,因此(如果不是为了测试)最好在传统 BIOS 模式下安装虚拟操作系统。