I was dual booting Chakra and Win10 on a HP laptop (UEFI) The last Windows update deleted the entry for Chakra on the boot menu (built into the HP Bios) and from what I can tell, to restore it is to reinstall Chakra. I’d like to avoid that and so I ask is there another way? I can still boot Chakra from an EFI file, but that’s a bit clumsy.
Boot from live, chroot, repair grub?
Grub is fine. It’s the HP Boot Menu in bios. Windows deleted the Chakra instance so it now boots directly to Windows. Here is a pic of the screen before Windows deleted Chakra
i suppose the efi entry for chakra is now on the second place and everything you need is set it active
- start a live system
- open a konsole
sudo efibootmgrdisplays the entries in NVRAM
sudo efibootmgr -a <currentPositionFromChakra
Yes, this happen time-to-time with an efi Chakra installation, if Windows are present… It’s a free gift from Microsoft, to EFI users…
EFIBootMgr seems to be the ticket but I couldn’t figure it out. So I reinstalled Chakra. Now that it is installed I can search for the key and when it happens again, I’ll have a better chance of making it work. If not, I’ll just wipe Windows and figure out how to do deal with my rare instances of using Windows.
You can still install both OS without EFI, in “legacy” mode. With the good old mode, there will be no pain in the butt.
reinstall is normal to much effort but
efibootmgr 16-1 isn’t really reliable because it can delete all existing boot entries when you write a new one or manipulate boot entries!
handle with care and double check boot entries after your work is done!
have a live media!
to see all boot entries:
to set a boot entry as active:
$sudo efibootmgr -b <entryNumber> -a
to change boot order:
$sudo efibootmgr -b <entryNumber1>,<entryNumber2><…> -o
to delete a boot entry:
$sudo efibootmgr -b <entryNumber> -B
[tom@frija ~]$ efibootmgr -h efibootmgr version 16 usage: efibootmgr [options] -a | --active sets bootnum active -A | --inactive sets bootnum inactive -b | --bootnum XXXX modify BootXXXX (hex) -B | --delete-bootnum delete bootnum -c | --create create new variable bootnum and add to bootorder -C | --create-only create new variable bootnum and do not add to bootorder -D | --remove-dups remove duplicate values from BootOrder -d | --disk disk (defaults to /dev/sda) containing loader -r | --driver Operate on Driver variables, not Boot Variables. -e | --edd [1|3|-1] force EDD 1.0 or 3.0 creation variables, or guess -E | --device num EDD 1.0 device number (defaults to 0x80) -g | --gpt force disk with invalid PMBR to be treated as GPT -i | --iface name create a netboot entry for the named interface -l | --loader name (defaults to "\EFI\/boot/EFI\grub.efi") -L | --label label Boot manager display label (defaults to "Linux") -m | --mirror-below-4G t|f mirror memory below 4GB -M | --mirror-above-4G X percentage memory to mirror above 4GB -n | --bootnext XXXX set BootNext to XXXX (hex) -N | --delete-bootnext delete BootNext -o | --bootorder XXXX,YYYY,ZZZZ,... explicitly set BootOrder (hex) -O | --delete-bootorder delete BootOrder -p | --part part (defaults to 1) containing loader -q | --quiet be quiet -t | --timeout seconds set boot manager timeout waiting for user input. -T | --delete-timeout delete Timeout. -u | --unicode | --UCS-2 handle extra args as UCS-2 (default is ASCII) -v | --verbose print additional information -V | --version return version and exit -w | --write-signature write unique sig to MBR if needed -y | --sysprep Operate on SysPrep variables, not Boot Variables. -@ | --append-binary-args file append extra args from file (use "-" for stdin) -h | --help show help/usage