NVRAM changes not persistent with efibootmgr

Williams, Gareth gareth at garethwilliams.me.uk
Thu Jul 10 10:56:42 UTC 2014


    

After a frozen install while trying to make a dual-boot system I had
to hard-reboot my laptop using the power button.



 



On restarting, I was greeted with a UEFI message telling me that there
was no bootable device installed!  I quickly inserted a boot CD and
managed to boot into my installed Fedora 20 by editing the
booted CD's grub commands (thank goodness for grub's command line
completion!).



 



I therfore know that my Fedora installation (including the EFI
partition) is intact and that my crash had somehow corrupted my UEFI
NVRAM.



 



A quick check with 'efibootmgr -v' confirmed this, as it just listed
the basic 'fallback' paths (no filepaths to the Fedora installed EFI
files).



 



The simple answer was therefore to re-add the entry for Fedora and
reboot.  In order to get the correct syntax for efibootmgr I grep'd
'/var/log/anaconda.program.log'  and found:



 



    'efibootmgr -c -w -L Fedora -d /dev/sda -p 1 -l
\EFI\fedora\shim.efi'.



 



I simply escaped the back-slashes by changing them to
double-back-slashes and ran the command as root.



 



I confirmed that everything had worked using 'efibootmgr -v' again and
it showed that the entry was there, so I rebooted.



 



Unfortunately, I was greeted by the same 'no bootable device' message
as before at which point I had to use the boot CD to get back in
again.



 



To my suprise 'efibootmgr -v' didn't show the entry that I'd just
created - it had simply vanished.



 



I Googled and Googled and got nowhere.  To get out of this
predicament, I installed Fedora again in the partition I'd earmarked
for the dual boot, at which point anaconda os-probed all
partitions/installations, re-created grub's grub.cfg file and fixed
the NVRAM.  I was then able to successfully boot my laptop. 
Fortunately, there was a kernel update waiting for me, so installing
that reconfigured grub2 and my main Fedora installation was the
default in grub again.



 



While I'm now working again, there is still the issue of not being
able to alter NVRAM using 'efibootmgr' directly.



 



My question therefore is: Does anaconda do something else after
running 'efibootmgr' to make it permanent? Or: Why can anaconda update
NVRAM using efibootmgr, while I can't?



 



Thanks in advance.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.fedoraproject.org/pipermail/users/attachments/20140710/287e63c9/attachment.html>


More information about the users mailing list