我的笔记本电脑固件更新后,Grub 菜单消失了,我只能在 Windows 10 上启动。
机器配置:
- 联想 X1 Carbon Gen 7th 搭载 Windows 10。
- 我安装了具有双启动的 Ubuntu 18.04。
- Grub 启动菜单选择工作正常截至昨天固件更新。
- 笔记本电脑现在直接启动到 W10,而不显示 Grub 菜单。
我做了什么:
- 尝试使用以下方法升级 grub这个帖子。结果是在 BIOS 中添加了一个启动项。但是选择后它什么也没做。
efibootmgr
尝试使用以下命令行添加启动项efibootmgr -c -d /dev/nvme0n1p1 -p 1 -l \\EFI\\ubuntu\\grubx64.efi -L "GRUB ubuntu"
。我按照以下方法操作另一个帖子。结果是在 BIOS 中添加了一个启动项。但是选择后它什么也没做。- 使用启动修复。我收到以下消息:
The boot of your PC is in EFI mode, but no ESP partition was detected. You may want to retry after creating a ESP partition (FAT32, 100MB~250MB, start of the disk, boot flag). Are you sure you want to continue anyway?
我没有继续。
Ubuntu Pastebin 是这里。我在 Pastebin 中注意到这条消息:Grub2 (v1.99-2.00) is installed in the MBR of /dev/nvme0n1 and looks at sector 2048 of the same hard drive for core.img, but core.img can not be found at this location.
但我不知道如何使用这些信息。
Ubuntu 系统仍在磁盘上:
nvme0n1 477G
├─nvme0n1p1 vfat 260M SYSTEM
├─nvme0n1p2 16M
├─nvme0n1p3 97.7G
├─nvme0n1p4 ntfs 1000M /mnt/boot-sav/nvme0n1p4 WinRE_DRV
└─nvme0n1p5 ext4 378G /mnt/boot-sav/nvme0n1p5
位于分区 5。
我的口袋里有:一个完整磁盘的旧 Clonezilla 映像、两天前的备份……以及在 W10 和 Ubuntu USB 上启动的正常工作的笔记本电脑。
有什么建议吗?我的目标是避免重新安装 Ubuntu...
感谢您的关注。
答案1
有一个非常简单的解决方法(参见来源),简而言之,从具有管理员权限的 Windows 终端运行以下命令:
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
警告:这当然是针对 Ubuntu 的。其他发行版会有不同的路径。
如果命令成功,您可以重新启动,然后 grub 应该会出现。否则,如果命令失败,请运行以下任一命令:
# cancel the previous command:
bcdedit /deletevalue {bootmgr} path \EFI\ubuntu\grubx64.efi
# or, to explicitly revert to Windows boot manager:
bcdedit /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi
笔记:必须停用安全启动。
答案2
根据以上评论,似乎可以使用多种方法来解决该问题。
如果 EFI 系统分区 - ESP 已被标记为hidden
,则必须删除此标志才能运行boot-repair
。
您可能还必须secure boot
在 BIOS 中解锁才能运行boot-repair
。
总而言之,启动修复是一个解决方案,但运行它可能需要一些初步行动。
答案3
我和联想军团的情况也一样。
解决方案
- 在启动时进入 BIOS(F2或fn+F2或其他,取决于您的机器)
- 在启动菜单中,检查启动顺序(不应更改,但要确保 1# 是正确的硬盘)
- 更改 EFI 顺序,让 Ubuntu/Linux 或其他任何以 grub 为第一位置的顺序
- 保存并重启
- 如果启动 Linux 发行版时出现黑屏(它附加到我身上),请再次进入 UEFI BIOS 并恢复出厂默认设置。在启动菜单中,启动顺序已更改为传统
- 重启