Show options of EFI entries

0

As described in the Arch Wiki, one can create an UEFI boot entry using efibootmgr like this:

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

With efibootmgr --verbose I can display information about existing boot entries. However, some details like the kernel parameters passed in the first command are not shown. How can I show these (not necessarily with efibootmgr)?

jan

Posted 2016-05-26T18:20:48.870

Reputation: 168

Answers

1

The kernel parameters are (or should be) shown; it's just that they're converted to UTF-16 when you create the entry and then shown in two-character form, with "." characters between entries, when you use efibootmgr -v. For instance:

$ 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.

The partition identifiers (-d and -p) get converted into EFI IDs, but otherwise everything should still be shown.

If you're seeing something significantly different, then it could be a bug in your particular version of efibootmgr (I used Ubuntu 16.04 and its efibootmgr 0.12 for this test) or perhaps a bug in your firmware that's causing data to be dropped or not communicated back to efibootmgr.

Rod Smith

Posted 2016-05-26T18:20:48.870

Reputation: 18 427

It seems that I just didn't create the entries right, creating a new entry and calling efibootmgr --verbose showed the options as you described. – jan – 2016-05-27T08:29:07.190