我有一个 VMWare Workstation 虚拟机,似乎只有从固件启动时才能启动到 Ubuntu/Grub。
如果我正常启动虚拟机(不先启动固件),它将启动到 Grub 提示符(恢复?)。
如果我使用启动菜单并选择 EFI 启动选项(Ubuntu)或者选择“正常启动”,它将启动到启动操作系统的 grub 屏幕。
我使用 EFI 启动。这是 EFI 启动设置。
我做错了什么?我尝试在 Ubuntu 操作系统上安装引导修复,它说成功了。我还尝试过删除所有引导选项,手动添加引导选项(我尝试过 \EFI 下的几乎所有 .efi 选项,我也尝试过让引导修复添加 EFI 选项。当然,我可以使用引导菜单引导到操作系统,但我不想这样做。
答案1
帖子中详细介绍了一个非常相似的问题 重启后,GRUB 在命令行中启动,其中 Grub 启动到救援控制台。
首先检查 UEFI/BIOS 中的启动信息是否看起来乱码,删除未知分区并重置启动顺序。
一个高度赞同的答案处理了 Grub 无法找到包含启动数据的根分区的情况,并展示了如何重置它:
在控制台中,使用命令列出所有可用设备
ls
对于每个设备,使用诸如
ls (hd0,1)/
和 之类的命令列出其分区ls (hd0,2)/
,直到找到类似于(hd0,1)/boot/grub
或(hd0,1)/grub
,或对于 EFI(hd0,1)/efi/boot/grub
或(hd0,1)/efi/grub
使用正确的数字设置启动参数:
set prefix=(hd0,1)/grub set root=(hd0,1) insmod linux insmod normal normal
计算机现在应该可以正常启动
要完成 Grub 信息,请启动终端并输入命令
sudo update-grub
。
如果这没有帮助,请通过
超级 Grub2 磁盘
并按grub-efi
如下方式重新安装:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck --debug /dev/sda
update-grub