Windows11/openSUSE dual boot - Windows invisible in BIOS&UEFI

Hello everyone,

I am a new user of openSUSE (installed it yesterday), however I have a problem with my dualboot. I
've decided to finally make a dual-boot on my 512GB SSD. I have 2 OS now: Windows 11 and openSUSE leap.
I’ve made a live pendrive and finished my installation according to the installer’s suggestions (I’ve let it decide how much space openSUSE partitions should take - 35GB).
The problem is - since then my Windows is a ghost (according to UEFI and BIOS).
I can’t access it. My wild guess is my windows bootloader was overwritten. The installation was in Legacy BIOS setup (no UEFI, no secure boots).
I’ve tried the following:

To sum up, I have 2 questions:

  • is my windows boot still available?
  • if so, how can I seperate it for grub, or prefferably restore BIOS/UEFI?

Please show output from:

efibootmgr
grep PROBER /etc/default/grub

I cannot be sure, with so little information. But it looks as if Windows is installed for UEFI booting, while openSUSE is installed for legacy booting.

That combination doesn’t work. Specifically, Windows will not show up in the grub menu when you have it setup that way.

I cannot tell whether Windows is still available. You need to switch to UEFI booting, and then you will find out.

You can try using Yast bootloader to switch booting to “grub2-efi”. Unfortunately, that will probably fail. If you uncheck the box “Update NVRAM Entry”, then the booting switch should work, but it will be incomplete so your system might not be bootable. You will need to boot to rescue media (the installer, and boot to the rescue system) to fix that. And you will need to make sure that you boot the installer in UEFI mode.

Actually, if you can get the install media to load in UEFI mode, then there is a menu option to boot a linux system. If you can get that to work to boot your system, then running Yast bootloader from there should work to change to “grub2-efi”. But this time, make sure the “Update NVRAM Entry” is checked so as to complete the switch.

@mrmazda @nrickert Update for both of your responses

Commands show the following:
efibootmgr: EFI variables are not supported on this system.
So as I said - openSUSE is in Legacy BIOS Mode
grep PROBER /etc/default/grub: GRUB_DISABLE_OS_PROBER=“false”
I have a default setting.

When I switched to UEFI booting there were no positions available. Disk isn’t even available for booting - it’s completely blank.

You will need to boot to rescue media (the installer, and boot to the rescue system) to fix that. And you will need to make sure that you boot the installer in UEFI mode.

Okay, but are you talking about openSUSE rescue mode or reinstalling Windows?

Actually, if you can get the install media to load in UEFI mode, then there is a menu option to boot a linux system. If you can get that to work to boot your system, then running Yast bootloader from there should work to change to “grub2-efi”. But this time, make sure the “Update NVRAM Entry” is checked so as to complete the switch.

Sounds good, however how can I do that with current openSUSE installation? Should I boot to the live linux version?
Maybe tweaking with installed openSUSE through grub-once option could help me (?) as it is reversible, so should be safe.
Also for more disk information, here’s a section of fdisk -l command (sorry for native language)


But before I do anything more with grub, I think I should rollback to previous snapshot for safety, since I forgot what default grub settings are in YaST…

Yes, it should be possible. But it depends on your BIOS, so you might need to experiment.

The menu screen looks different, depending on how you boot. If you boot the install media in UEFI mode, it will look like a grub menu. If you boot in legacy mode, there will be a place to enter additional boot params. You need to boot in UEFI mode. It might take some experimentation.

That’s another alternative. It should have a similar menu with an option for booting a linux system. But, once again, you must boot it in UEFI mode, not in legacy mode.

Legacy mode

UEFI

3 Likes

When I try to switch my grub to UEFI mode, I get the following message:
Przechwycenie obrazu ekranu_2025-01-12_18-04-46

Oops. I missed a step.

You need your EFI partition to be mounted at “/boot/efi”. You can use Yast partitioner for that.

After your suggestion, I could use Linux in UEFI, but not how I expected.
For some reason BIOS was reading only the pendrive, from which I booted to openSUSE partition.

Then I went in YaST2 and began changing boot locale to the linux partition itself (nvme0n1p6), hoping that separating linux from EFI will solve this.
Now nothing is seen as a bootable device except the pendrive - n i c e -_-

Fortunately I have two additional pendrives and a separate disk with a working Fedora Linux, I begin to do the following:

  • moving vital to me data from Windows partition to Fedora disk (seperate partition NFTS in which I store excessive data, still plenty of space)
  • I’ve decided to remove network openSUSE live version on my 1st pendrive - I had problems with setting up wifi and I don’t have the patience anymore - and replaced it with the offline version
  • On my 2nd pendrive I’ve installed Windows 11 Media creation tool from official Microsoft website
    Now I will try to salvage my Windows, hopefully there are Legacy/EFI repairs
    Wish me luck, I may update soon

Hi

You can have openSUSE installed twice and boot either Legacy or Secure boot.

For Legacy you need a separate partition, just a few MB.

Mine was 7 MB for Legacy MBR and 260 MB for EFI area.
So you may want to look using Gparted or Paragon Partition Manager 17 CE.

2 Likes

23:00 PM Update:

  • I’ve managed to reinstall openSUSE on the linux partisions. I’ve also made sure Windows partitions remained intact and they are as they were.
  • However Windows 11 media recovery failed to diagnose anything wrong. The good news is there are no EFI repairs involved, so now I know this is purely EFI Windows partition’s fault

23:15 PM Update:

  • WINDOWS WORKS! After reinstalling openSUSE to UEFI there are three positions on my disk: openSUSE-secureboot, openSUSE and Windows Boot Manager!

Never before have I felt more joy for hearing Windows 11 boot up… thanks guys!
There is one question though: what went wrong exactly and when?
All of this seems to indicate that my Windows partition wasn’t touched, only invisible. But how?

I’m glad to hear that it is now working.

What went wrong, was that you installed openSUSE for legacy booting, and that’s not compatible with Windows installed for EFI booting.

2 Likes

I did this as well a couple years ago on my decade old machine trying to dual boot ubuntu. I didn’t know anything about BIOS (legacy) vs UEFI booting, GPT and MBR too, and that grub clobbers BIOS bootloaders. I reinstalled windows then and recovered files but finally ditched that system for pure tumbleweed just recently…

1 Like

I recently experienced problems with starting Windows from openSUSE-secureboot grub-bootloader: the Windows PIN wasn’t accepted any longer. I had to reset it. This was probably due to boot certificate issues. Since then I am using the Windows UEFI-Bootloader and openSUSE-secureboot only for booting openSUSE Linux. Works fine so far…

1 Like

Was it Windows 10, Windows 11? Did it work before? Were there any changes before it stopped working?

It was Windows 11, working fine in dual-boot. The only change was a GRUB-Update with openSUSE.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.