No Windows boot after install

Hello everyone! I’m pretty new to OpenSUSE and I’m very much enjoying Tumbleweed.

My problem is that I installed Tumbleweed on my desktop and now I can only boot into Linux. The Grub doesn’t show a Windows 10 option.

Windows’ files are still visible in Dolphin, YasT boot manager has “probe foreign OS” enabled. I tried os-prober and it returned nothing.

I’m a bit worried that I made a mix of Legacy and UEFI.

Thanks in advance.

Does

ls -l /boot/efi/EFI

show a Microsoft entry?

Nope.

ls: cannot access '/boot/efi/EFI': No such file or directory

Then Tumbleweed was installed with legacy boot.

Darn. How would I go about fixing this? Should I reinstall Tumbleweed?

Let’s take a look at the partitioning:

sudo fdisk -l

Disk /dev/sda: 1.86 TiB, 2048408248320 bytes, 4000797360 sectors
Disk model: SPCC Solid State
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 77DAAA74-8C6B-4758-A0A2-CB58ABAA1875

Device          Start        End    Sectors   Size Type
/dev/sda1        2048     616447     614400   300M Windows recovery environment
/dev/sda2      616448     821247     204800   100M EFI System
/dev/sda3      821248    1083391     262144   128M Microsoft reserved
/dev/sda4     1083392 2191596111 2190512720     1T Microsoft basic data
/dev/sda5  2191597568 2191613951      16384     8M BIOS boot
/dev/sda6  2191613952 4000797326 1809183375 862.7G Linux LVM


Disk /dev/mapper/system-root: 296.89 GiB, 318788075520 bytes, 622632960 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/system-swap: 2 GiB, 2147483648 bytes, 4194304 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/system-home: 563.79 GiB, 605363896320 bytes, 1182351360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

I don’t know if that will work because I’ve never had to do that before.
First you have to figure out the UUID of /dev/sda2.

sudo blkid /dev/sda2
/dev/sda2: UUID="BE02-0DD3" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="d890d03e-c2d7-4a8b-99f7-fdd953827da6"

Now add this line to
/etc/fstab

UUID=BE02-0DD3 /boot/efi vfat utf8 0 2

Note that Windows does not show up in Linux if fast boot is turned on.

You have to add the line within /etc/fstab an then to save as /etc/fstab again.

I just rebooted and disabled fast boot, same result.

Okay I did it!

Then open YaST Bootloader and choose
Grub2 for EFI → OK.

It gave me an error message:

Try
sudo mount -a
previously

mount: /boot/efi: mount point does not exist.
       dmesg(1) may have more information after failed mount system call.

Please show the output of

cat /etc/fstab