Happy to post more details if necessary/useful. I've tried obvious things (boot-repair etc.).
By default, the only way I can currently boot my machine is by inserting the Ubuntu (14.04) stick I created to install a dual-boot system alongside Windows 8.1. A couple of required manual steps are described below. Also described below are the steps I can take to enable a successful reboot without the USB stick, however these settings do not persist, and fail after a second reboot. The question is: how can I make my UEFI settings persist across reboots?
Initial situation: boot failure and workaround
If the stick is not inserted, boot fails (after the option to enter the settings menu) with a "please insert correct media and reboot" type message.
With the drive inserted, I can access the (USB) grub command line and then get to the installed grub configuration via:
The second grub menu then enables booting Ubuntu or the original Windows 8.1 instance.
Apparent fix: grub-install and efibootmgr
If I take the following two steps, I can obtain a successful reboot to the installed grub menu (no USB stick required):
1) sudo grub-install --efi-directory=/boot/efi --target=x86_64-efi --uefi-secure-boot
2) sudo efibootmgr -n 0
Note, ubuntu is entry 0000 (and active) in efibootmgr output.
After these steps, efibootmgr -v yields similar output regarding the Ubuntu installation before and after one reboot (but only one), namely:
Boot0000* ubuntu HD(2,96800,32000,e3ae99c8-b2d4-4941-94cf-58a12eec0c21)File(\EFI\ubuntu\shimx64.efi)
But, a second reboot fails (if the two commands above are not executed) and now requires the USB stick again. After the second reboot, efibootmgr -v yields:
Boot0000 ubuntu Vendor(99e275e7-75a0-4b37-a2e6-c5385e6c00cb,)
No longer active and no longer correctly configured.
Suggestions? Again, happy to post further details if that helps.