我在 Windows 11 的同时安装了 Ubuntu 22.04。Windows 更新后,我的系统直接启动到 Windows,并且不显示 GRUB 菜单,因此我无法访问 Ubuntu。我尝试修复使用实时 USB 的默认设置运行引导修复的问题。结果如下:https://paste.ubuntu.com/p/Dw4smk9n6S/。我的系统仍然直接启动进入 Windows。
我尝试更改启动顺序(虽然没有明确列出“Ubuntu”),禁用安全启动以及bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi
从 Windows cmd 运行。仍然直接启动到 Windows。非常感谢您的帮助。谢谢!
答案1
清除并重新安装 grub 后,我尝试了这个。对我来说,这在双启动 Ubuntu 22.04 和 Windows 11 上非常有效。
列出所有分区和磁盘使用情况
sudo fdisk -l
就我而言,它看起来像这样:
所以在我的电脑上 <boot_partition> = /dev/nvme0n1p5 和 <efi_partiton> = /dev/nvme0n1p1
之后运行上述答案中的命令:
sudo mount /dev/nvme0n1p5 /mnt
sudo mount /dev/nvme0n1p1 /mnt/boot/efi
for dir in /dev /dev/pts /proc /sys /run; do sudo mount --bind $dir /mnt$dir; done
sudo chroot /mnt /bin/bash
mount -t efivarfs none /sys/firmware/efi/efivars
grub-install
update-grub
重启后系统引导加载程序运行完美,我可以选择 Ubuntu 或 Windows 11 系统。
答案2
感谢您提出的解决方案。重新运行 boor-repair 后,boot-repair 摘要中的以下行给出了最终提示:
grub-install:警告:无法在此系统上设置 EFI 变量。
grub-install:警告:您必须手动完成 GRUB 设置。
下列的维基 Ubuntu 用户和这个StackExchange 文章,我手动执行了以下步骤:
sudo mount /dev/<boot_partition> /mnt
sudo mount /dev/<efi_partition> /mnt/boot/efi
for dir in /dev /dev/pts /proc /sys /run; do sudo mount --bind $dir /mnt$dir; done
sudo chroot /mnt /bin/bash
mount -t efivarfs none /sys/firmware/efi/efivars
grub-install
update-grub
mount -t efivarfs none /sys/firmware/efi/efivars
是 Wiki 文章中缺失的部分。