Ubuntu – Having Trouble adding UEFI entry using efibootmgr

biosbootdual-bootgrub2uefi

I am trying to rename the boot label of ubuntu. In order to rename the label, I have to delete the entry and create it again. However efibootmgr seem to not recognize the correct partition. Here is what I do to create the entry:

sudo efibootmgr -c -w -l \\EFI\\ubuntu\\shimx64.efi -L "Lubuntu" -p 2 -d /dev/sdb2

This works, however right after I reboot this entry is deleted.
When I do efibootmgr -v I get this

Boot0003* Lubuntu   HD(2,0,0,500a0dff)File(\EFI\ubuntu\shimx64.efi)
Boot0007* Ubuntu    HD(2,1f4800,82000,adcf2808-6afb-47fc-be64-5ce73ca83859)File(\EFI\ubuntu\grubx64.efi)RC
Boot00A5* Windows Boot Manager  HD(2,1f4800,82000,adcf2808-6afb-47fc-be64-5ce73ca83859)File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...s................

"Ubuntu" is the working entry. As you can clearly see, they are pointing to totally different places, yet the files are in the same place.

Any ideas?

Best Answer

The -d option to efibootmgr takes a whole-disk device, such as /dev/sda or /dev/sdb, not a partition (such as the /dev/sdb2 you've provided). The -p option identifies the partition on the disk, which in your example you've set to 2.