I’ts my first time with opensuse (I was in ubuntu), but I have a problem with the boot.
My pc have uefi activated (No secure boot), and I have 3 Hard disk (one for windows, one for linux and another for data)
I installed opensuse with all options in default in disk two and I put in the bios that have to boot with the linux disk, but every time I start the machine, boots with the windows disk. If I select manually the boot source (with F10 in the start), Opensuse can be started.
Is there a special option if the efi partition is in another disk? Why windows is so evil?
I have an HP desktop (UEFI) with Windows 10 installed and what I did was to create a new EFI partition for Opensuse to use. I let Windows keep it’s own EFI partition (labelled as sda2) and installed Opensuse 42.1 using the new EFI partition I created (labelled as sda5). At first it kept defaulting to the Windows efi partition (sda2) until I clicked on Rescan Devices at the bottom of the screen. After that it showed me the new partition setup with Opensuse using sda5 as its own boot/efi partition. I can now boot up into Opensuse or select Win 10 from the boot menu.
Windows will usually try to make its boot-loader default again which means that the Linux EFI boot option “disappears”.
While in Windows, open an Elevated Command Prompt and copy/paste this command (source):
However, it is not really a Windows problem, at least in my case. It is a BIOS (UEFI firmware) problem. The BIOS doesn’t see any reason to have more than one UEFI boot entry. So it deletes all but the most recent. Windows notices that it’s boot entry has been deleted, so it puts it back. And then the BIOS deletes the opensuse entry since the Windows entry was the most recent.
The solution to this, at least for the Dell Inspiron 660, is to have a separate EFI partition for opensuse. Apparently the BIOS doesn’t mind keeping two boot entries, as long as they use distinct EFI partitions.
I did recently run into a related issue. The BIOS seems to think that a UEFI boot entry that hasn’t been used for a long time should be deleted. I was booting Windows from the grub menu. And it looked as if the BIOS deleted the WIndows boot entry (after around 6 months of only booting Windows from grub). Windows put its entry back, but made it the first in preference.
Since then, I have made a point of occasionally using the Windows boot entry (either F12 on boot and select that entry, or “efibootmgr -n 0001” from opensuse to boot Windows next (windows happens to be entry 0001 on my system). I’m hoping that will persuade the BIOS not to delete the Windows entry.