在尝试重新安装 Ubuntu 16.04 并删除以前的操作系统(Ubuntu 18.04)之前,我对 efibootmgr 做了一些修改。
安装是在 SSD(NVMe 驱动器)上进行的,而不是在硬盘上,这给我带来了各种麻烦。全部在 UEFI 中。
新安装无法启动,因为启动文件“丢失”。我之前对 efibootmgr 所做的更改即使在完全擦除以前的磁盘并完全重新安装后仍然存在。我所做的更改是添加条目 grub-NVMe 和 boot-NVMe(请参阅如何将启动分区的挂载点设置为 /boot/efi?)。这些条目仍然存在,还有一些新条目,总体看起来相当混乱。
现在 efibootmgr -v 的条目如下
efibootmgr-v
BootCurrent: 100C
Timeout: 1 seconds
BootOrder: 0000,0007,0009,0008,0006,000A,000B,0001,0002,0004,0005
Boot0000* ubuntu HD(1,GPT,c58d6abb-383b-4281- bb6d-4296ca698224,0x800,0x100000)/File(\EFI\ubuntu\shimx64.efi)
Boot0001* grub VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* boot VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0004* grub-NVMe VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0005* boot-NVMe VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0006* Diskette Drive BBS(Floppy,,0x0)..GO..NO[.......+.D.i.s.k.e.t.t.e. .D.r.i.v.e.........................rN.D+..,.\...........BO
Boot0007* M.2 PCIe SSD BBS(HD,,0x0)..GO..NO........u.M...2. .P.C.I.e. .S.S.D....................A.............................q.........8..Gd-.;.A..MQ..L.E.I.7.7.M.0.0.0.1.1.0.8.0.7.K.0.K........BO
Boot0008* Hard Drive BBS(CDROM,,0x0)..GO..NO........o.H.a.r.d. .D.r.i.v.e....................A...........................>..Gd-.;.A..MQ..L. . . . . . . . . . . . .4.Z.8.Z.L.X.9.1........BO
Boot0009* USB Storage Device BBS(PCMCIA,,0x0)..GO..NO........m.U.S.B. .S.t.o.r.a.g.e. [email protected].;.A..MQ..L.3.7.2.7.0.9.4.6.7.7.5.9.1.5.2.6.2.9.2.4.2........BO
Boot000A* CD/DVD/CD-RW Device BBS(USB,,0x0)..GO..NO........o.C.D./.D.V.D./.C.D.-.R.W. .D.e.v.i.c.e....................A...........................>..Gd-.;.A..MQ..L.Z.K.H.3.1.8.2.8.0.4. .4. . . . . . . . ........BO
Boot000B* NetWork BBS(Network,,0x0)..GO..NO........o.N.e.t.W.o.r.k.........................rN.D+..,.\[email protected].;.A..MQ..L.Q.u.a.l.c.o.m.m. .A.t.h.e.r.o.s. .B.o.o.t........BO
这个设置可能是 Ubuntu 无法启动的原因吗?如有必要,如何将 efibootmgr 重置为“正常”状态?
BLKIDD:
/dev/nvme0n1p1: UUID="ABAB-B1AB" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="c58d6abb-383b-4281-bb6d-4296ca698224"
/dev/nvme0n1p2: UUID="da07a979-a548-4e38-9133-e543bc486a07" TYPE="ext4" PARTUUID="8cf26198-05be-4f47-aad7-44045c44b460"
/dev/sdc1: LABEL="UBUNTU 16_0" UUID="B6D7-AAC4" TYPE="vfat" PARTLABEL="Microsoft Basic Data" PARTUUID="cb704399-f613-41df-9175-a42e3d645032"
我只能从 USB 运行 Ubuntu Live,因为 Ubuntu 的安装无法启动。我正在尝试设置正确的条目以使整个过程正常工作,因为无论我如何安装 Ubuntu,fstab、grub 和 efibootmgr 都有奇怪的条目无法重置。
目标是能够在 UEFI 系统上的 SSD(nvme0n1p1)上安装 ubuntu,无需双启动,不会丢失数据,并使其正常工作,避免出现“未找到启动设备”的错误
efibootmgr-v
BootCurrent: 100C
Timeout: 1 seconds
BootOrder: 0000,0007,0009,0008,0006,000A,000B,0001,0002,0004,0005
Boot0000* ubuntu HD(1,GPT,c58d6abb-383b-4281-bb6d-4296ca698224,0x800,0x100000)/File(\EFI\ubuntu\shimx64.efi)
Boot0001* grub VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* boot VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0004* grub-NVMe VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0005* boot-NVMe VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0006* Diskette Drive BBS(Floppy,,0x0)..GO..NO[.......+.D.i.s.k.e.t.t.e. .D.r.i.v.e.........................rN.D+..,.\...........BO
Boot0007* M.2 PCIe SSD BBS(HD,,0x0)..GO..NO........u.M...2. .P.C.I.e. .S.S.D....................A.............................q.........8..Gd-.;.A..MQ..L.E.I.7.7.M.0.0.0.1.1.0.8.0.7.K.0.K........BO
Boot0008* Hard Drive BBS(CDROM,,0x0)..GO..NO........o.H.a.r.d. .D.r.i.v.e....................A...........................>..Gd-.;.A..MQ..L. . . . . . . . . . . . .4.Z.8.Z.L.X.9.1........BO
Boot0009* USB Storage Device BBS(PCMCIA,,0x0)..GO..NO........m.U.S.B. .S.t.o.r.a.g.e. [email protected].;.A..MQ..L.3.7.2.7.0.9.4.6.7.7.5.9.1.5.2.6.2.9.2.4.2........BO
Boot000A* CD/DVD/CD-RW Device BBS(USB,,0x0)..GO..NO........o.C.D./.D.V.D./.C.D.-.R.W. .D.e.v.i.c.e....................A...........................>..Gd-.;.A..MQ..L.Z.K.H.3.1.8.2.8.0.4. .4. . . . . . . . ........BO
Boot000B* NetWork BBS(Network,,0x0)..GO..NO........o.N.e.t.W.o.r.k.........................rN.D+..,.\[email protected].;.A..MQ..L.Q.u.a.l.c.o.m.m. .A.t.h.e.r.o.s. .B.o.o.t........BO
请注意 efibootmgr 上有很多条目,其中大多数指向不存在的分区(99e27e...不在我的 blkid 列表中,更不用说 Boot0007 到 000B 了)。
猫/etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/nvme0n1p2 during installation
UUID=da07a979-a548-4e38-9133-e543bc486a07 / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/nvme0n1p1 during installation
UUID=ABAB-B1AB /boot/efi vfat umask=0077 0 1
# swap was on /dev/nvme0n1p3 during installation
UUID=1aa6ab58-4338-4c34-941d-6a9ee82046dc none swap sw 0 0
lsblk:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
loop0 7:0 0 1.5G 1 loop /rofs
sdc 8:32 1 7.5G 0 disk
└─sdc1 8:33 1 7.5G 0 part /cdrom
sda 8:0 0 1.8T 0 disk
nvme0n1 259:0 0 477G 0 disk
├─nvme0n1p3 259:3 0 15.9G 0 part
├─nvme0n1p1 259:1 0 512M 0 part
└─nvme0n1p2 259:2 0 460.5G 0 part
/boot/efi 是空的,因此在 efibootmgr 上,尝试从 Boot0000 ubuntu /EFI/ubuntu/shimx64.efi 启动肯定行不通,因为没有这样的文件或文件夹。不明白为什么它是空的。
sudo parted /dev/nvme0n1p1 打印
Model: NVMe Device (nvme)
Disk /dev/nvme0n1p1: 537MB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 537MB 537MB fat32
我觉得主要问题是没有 shimx64.efi 文件的空 /efi/ 文件夹,以及 efibootmgr 上奇怪的其他条目。
关于如何实现稳定设置有什么帮助吗?