显示 EFI 条目的选项

显示 EFI 条目的选项

根据 Arch Wiki 中所述,可以使用 efibootmgr 创建 UEFI 启动项,如下所示:

efibootmgr -d /dev/sdX -p Y -c -L "Arch Linux" -l /vmlinuz-linux -u "root=/dev/sda2 rw initrd=/initramfs-linux.img"

使用efibootmgr --verboseefibootmgr,我可以显示有关现有启动项的信息。但是,一些详细信息(例如第一个命令中传递的内核参数)并未显示。我该如何显示这些信息(不一定使用 efibootmgr)?

答案1

内核参数(或者应该) 显示;只是当您创建条目时,它们会被转换为 UTF-16,然后以双字符形式显示,条目之间有“。”字符,当您使用时efibootmgr -v。例如:

$ sudo efibootmgr -d /dev/sda -p 1 -c -L "Arch Linux" -l /vmlinuz-linux -u "root=/dev/sda2 rw initrd=/initramfs-linux.img"
BootCurrent: 0001
BootOrder: 0003,0000,0001,0002
Boot0000* EFI DVD/CDROM
Boot0001* EFI Hard Drive
Boot0002* EFI Internal Shell
Boot0003* Arch Linux
$ sudo efibootmgr -v
BootCurrent: 0001
BootOrder: 0003,0000,0001,0002
Boot0000* EFI DVD/CDROM PciRoot(0x0)/Pci(0x1,0x1)/Ata(1,0,0)
Boot0001* EFI Hard Drive    PciRoot(0x0)/Pci(0xd,0x0)/Sata(0,0,0)
Boot0002* EFI Internal Shell    MemoryMapped(11,0x6584f000,0x65bbefff)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)
Boot0003* Arch Linux    HD(1,GPT,e0e491c1-116a-433e-9d74-71ca4b6fbac6,0x800,0x100000)/File(\vmlinuz-linux)r.o.o.t.=./.d.e.v./.s.d.a.2. .r.w. .i.n.i.t.r.d.=./.i.n.i.t.r.a.m.f.s.-.l.i.n.u.x...i.m.g.

分区标识符(-d-p)转换为 EFI ID,但除此之外所有内容仍应显示。

如果您看到明显不同的内容,那么这可能是您的特定版本中的错误efibootmgr(我使用 Ubuntu 16.04 及其efibootmgr0.12 进行此测试)或者是您的固件中的错误导致数据丢失或无法传回efibootmgr

相关内容