So I decided to dual boot Windows 10 and OpenSUSE Leap 42.1. Everything went smoothly up until it tried installing GRUB2 EFI which would fail. So I decided to install GRUB 2 (the non EFI one) and the install was done. Now when I boot up my system, GRUB doesnt detect my Windows 10 system. Is there a way I can reinstall GRUB 2 EFI or do anything so that I can get the Windows 10 option listed?
Just so you guys know, I have a boot/efi partition, a / partition and a seperate /home partition. BIOS enabled to UEFI/Legacy mode.
If you want to install grub2-efi, then you need to boot the install media in UEFI mode. And then run a repair install of grub2-efi.
Installing grub2-efi when booted to legacy mode will fail.
I don’t know enough about your system to tell you how to proceed. I would be trying something along the following lines:
If possible, boot the install media to UEFI mode. Sometimes you can do that by hitting F12 during boot (maybe a different key on your system) and a menu allows selecting UEFI boot. If that doesn’t work, then you will need to set the BIOS to UEFI only. Then you should be able to boot the install media in UEFI mode.
Once you have worked out how to do that, you can boot the installer to the rescue system (still must be UEFI mode). Then mount your partitions. Follow the guide here; Linux rescues.
Once you are in rescue mode and have a “chroot” shell, you will need to run the command
# grub2-install --target=x86_64-efi
While still in that chroot shell, it might be best to run
# grub2-mkconfig -o /boot/grub2/grub.cfg
After that, you should be able to boot your system in UEFI mode. Leave secure-boot disabled in your BIOS. If you want to turn that on, there are some more steps needed.
The reason your system is not detecting Windows 10, is likely because Windows 10 uses UEFI booting, and that is incompatible with legacy booting. Once you have your system booting to UEFI mode, Windows 10 should show up in the menu.
Thanks for replying so quick yesterday. Sorry I wasn’t able to reply back tho.
I tried what both of you had suggested:
I followed nrickert’s advice and mounted the drives carefully one by one as per the tutorial he provided. But then when I chroot into /mnt and run
# grub2-install --target=x86_64-efi
it says that it cannot find efi partition and asks me to check if efi partition has been mounted properly. I have checked and rechecked this step I mounted my Windows 10 drives one by one and then my Linux root and /home partitons to /mnt and my efi boot partition to /mnt/boot/efi ie. I ran
mount /dev/sda8 /mnt/boot/efi
where sda8 was my efi boot partition (using FAT filesystem). I know this after I ran
fdisk -l
. But it still showed me that error message.
So I decided to follow arvidjaar’s advice and do a clean install. I made sure my BIOS was in UEFI only mode and I was accessing my UEFI USB in my boot priorities.
When I finalize my partitioning the installer prompts me 2 times saying “some subvolumes of the root filesystem are shadowed” and the second one being “Boot partition does not have a GPT disk label” but I eventually try to proceed as is and I end up with the GRUB-EFI not being installed. So there’s this checkbox beside the drop down menu which says “Enable support for secure boot” and I uncheck it try to install GRUB-EFI. The install completes but I end up with Windows 10 not showing up on the GRUB menu.
I have dual booted OpenSUSE 42.1 on a similar machine a few days ago with no problems but I can’t understand what is wrong with this one.
Oh and another thing I have noticed is that the Boot Priorities list has 3 “opensuse” entries. Something doesnt seem right about these either. I have now completely wiped my system clean of my OpenSUSE install and have restored Windows MBR. Any help regarding this matter would be highly appreciated.