Dual boot: booting EOS only possible with F12

Hi everybody,
could need some help with the unsatisfactory boot behavior on my laptop. Just installed EOS alongside Win10 and during installation created a new boot partition:

/dev/sda9: 1 GiB, fat 32, mount point /efi, flag: boot esp

There is also the windows thing:

/dev/sda1: 100 MiB, fat 32, flag: boot esp

I had before tried with GRUB but this time chose the default bootloader option (system.d or so?)

I can only get a boot menu, listing EOS, by pressing F12 at startup. If I don’t or if I’m not quick enough, Windows is booted right away. In the BIOS there are only two entries, both showing “Windows”. I would love to get a boot menu at startup that lists all available options, instead of having to press F12 before Windows is booted automatically.

Even though I now use Systemd-boot it was a while back that I read about it and what it is opposed to Grub. Memory is fuzzy so here is my understanding

Systemd-boot will find the esp flag and will boot to that so having more than one device will result in Systemd-boot choosing the first found esp device. Hopefully @pebcak or @dalto can explain it. So I think with Systemd-boot its best to have one boot partition for all instead of one for each of the OS’s

You say in the BIOS, only two entries are possible? That seems very weird. There should be other options, like simply booting from a particular drive. Mind sharing a screenshot of the BIOS boot order settings?

You could check whether EOS is the first boot option in the bios, otherwise, you can change the boot order from there

Can you boot into your EOS install and share the output of sudo efibootmgr

So this is what I get when I’m in BIOS:

This is what I get after F12, I choose 6. for booting EOS (the others obviously were some older installations, that have been replaced):

Finally sudo efibootmgr gives me this output:

BootCurrent: 0006
Timeout: 0 seconds
BootOrder: 0002,0007,0003,0004,0001,0006,0005,2001,2002,2003
Boot0001* endeavouros HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\endeavouros\grubx64.efi
Boot0002* Windows Boot Manager HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\Microsoft\Boot\bootmgfw.efi57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000000000100000010000000040000007fff0400
Boot0003* antergos_grub_jtsw HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\antergos_grub_jtsw\grubx64.efi
Boot0004* RebornOS HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\RebornOS\grubx64.efi
Boot0005* Linux Boot Manager HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\systemd\systemd-bootx64.efi
Boot0006* Linux Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\systemd\systemd-bootx64.efi
Boot0007* Windows Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\Microsoft\Boot\bootmgfw.efiRC
Boot2001* EFI USB Device RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network RC

Run this command:

sudo efibootmgr -o 0006,0002

Then reboot.

Also, you might want to clean up all those unused entries you have at some point.

Thanks for the suggestion. Did so but still Windows is booted right away, unless I interfere by using F12. After F12, there are now only three entries:

  1. Windows Boot Manager
  2. Windows Boot Manager
  3. Linux Boot Manager
sudo efibootmgr

BootCurrent: 0006
Timeout: 0 seconds
BootOrder: 0000,0002,0006,2001,2002,2003
Boot0000* Windows Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\Microsoft\Boot\bootmgfw.efiRC
Boot0001* endeavouros HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\endeavouros\grubx64.efi
Boot0002* Windows Boot Manager HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\Microsoft\Boot\bootmgfw.efi57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000000000100000010000000040000007fff0400
Boot0003* antergos_grub_jtsw HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\antergos_grub_jtsw\grubx64.efi
Boot0004* RebornOS HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\RebornOS\grubx64.efi
Boot0005* Linux Boot Manager HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\systemd\systemd-bootx64.efi
Boot0006* Linux Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\systemd\systemd-bootx64.efi
Boot0007* Windows Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\Microsoft\Boot\bootmgfw.efiRC
Boot2001* EFI USB Device RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network RC

It looks like the order is being reset. Also, another Windows entry was added that wasn’t there before. This is potentially a BIOS/firmware issue.

Try deleting all the unused entries and see if that helps. You can delete 0001, 0003, 0004, 0005 and the extra Windows entries.

Um never done that before. Like so for 0001 e. g.?

sudo efibootmgr -b 0001 -B

Yes. Like that.

I usually use:

sudo efibootmgr -Bb 0001

It should work either way though.

Okay I deleted those, but again, Windows will boot first, unless I interfere with F12.

sudo efibootmgr

BootCurrent: 0006
Timeout: 0 seconds
BootOrder: 0000,0002,0006,2001,2002,2003
Boot0000* Windows Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\Microsoft\Boot\bootmgfw.efiRC
Boot0002* Windows Boot Manager HD(1,GPT,b7fcdb1c-7234-42ad-8de7-e760be2b2a54,0x800,0x32000)/\EFI\Microsoft\Boot\bootmgfw.efi57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000000000100000010000000040000007fff0400
Boot0006* Linux Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\systemd\systemd-bootx64.efi
Boot0007* Windows Boot Manager HD(9,GPT,802b2972-5008-466b-81dd-a9962bd618f8,0x3b5de000,0x203000)/\EFI\Microsoft\Boot\bootmgfw.efiRC
Boot2001* EFI USB Device RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network RC

Should I do sudo efibootmgr -o 0006,0002 once more or is all hope lost here?

Have you checked to see if there any bios updates available? It isn’t normal that the BIOS would reorder and add additional entries.

Meanwhile I checked and indeed it looks like there is a slightly newer BIOS version available. Have never updated a BIOS though and wonder how risky it is to break “everything”. Is it risky or should I rather learn to live with the F12 method?