GRUB 不记得根文件系统的位置

GRUB 不记得根文件系统的位置

我删除了旧的 Ubuntu 操作系统,并从 USB 设备安装了 Ubuntu 20.04 LTS(与 Windows 10 一起)来替换它。安装后第一次启动时,GRUB 菜单没有加载,而是打开了 GRUB CLI。我了解到这是由于 GRUB 找不到根文件系统造成的。我按照本教程从 CLI 配置 GRUB。一切顺利,我能够启动 Ubuntu。成功运行sudo update-grubsudo grub-install /dev/nvme0n1重新启动后,GRUB 仍然打开 CLI,而不是像它应该的那样加载菜单。我不知道为什么 GRUB 不记得这些配置。有没有办法手动更改文件以便正确加载启动菜单?

如果有帮助的话,我的分区如下所示:

NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0          7:0    0  55,5M  1 loop /snap/core18/1988
loop1          7:1    0   219M  1 loop /snap/gnome-3-34-1804/66
loop2          7:2    0  64,8M  1 loop /snap/gtk-common-themes/1514
loop3          7:3    0  31,1M  1 loop /snap/snapd/11036
loop4          7:4    0    51M  1 loop /snap/snap-store/518
loop5          7:5    0  99,4M  1 loop /snap/core/11316
loop6          7:6    0  61,7M  1 loop /snap/core20/1026
loop7          7:7    0 207,1M  1 loop /snap/code/67
loop8          7:8    0 301,5M  1 loop /snap/telegram-desktop/2814
loop9          7:9    0  55,5M  1 loop /snap/core18/2074
loop10         7:10   0  32,3M  1 loop /snap/snapd/12398
loop11         7:11   0   219M  1 loop /snap/gnome-3-34-1804/72
loop12         7:12   0    51M  1 loop /snap/snap-store/547
loop13         7:13   0  65,1M  1 loop /snap/gtk-common-themes/1515
nvme0n1      259:0    0   477G  0 disk 
├─nvme0n1p1  259:1    0   500M  0 part 
├─nvme0n1p2  259:2    0   128M  0 part 
├─nvme0n1p3  259:3    0 290,1G  0 part 
├─nvme0n1p4  259:4    0  78,1G  0 part 
├─nvme0n1p5  259:5    0   932M  0 part 
├─nvme0n1p6  259:6    0  12,2G  0 part 
├─nvme0n1p7  259:7    0   1,1G  0 part 
├─nvme0n1p8  259:8    0     1M  0 part 
├─nvme0n1p9  259:9    0   513M  0 part 
├─nvme0n1p10 259:10   0  23,3G  0 part /
└─nvme0n1p11 259:11   0  70,1G  0 part /home

答案1

UEFI 模式应该在 /boot/efi 处挂载 EFI 分区——但你没有。没有该挂载,就无法更新 /boot/efi/EFI/ubuntu/grub.cfg,这是从根目录引入 /boot/grub/grub.cfg 的三行存根。你可以使用以下命令找到 EFI 分区的 UUID

sudo blkids

然后只需编辑 EFI 的 grub.cfg 并使用该 UUID(并更改任何旧磁盘/分区引用提示)。或者只需使用以下行修复 /etc/fstab 中的 EFI 安装:

UUID=xxxx-yyyy  /boot/efi       vfat    umask=0077      0       1

使用 EFI 分区的 UUID。然后运行

sudo grub-install /dev/nvme0n1

检查/添加启动标志是否在 EFI 分区上,然后一切就绪了。

相关内容