SUCCESS - Fixed Grub2 on Windows 8.1 / OpenSUSE 13.1 dual boot system

I was starting to enjoy OpenSUSE 13.1, and I was stunned last night when something unknown happened and I was no longer able to boot OpenSUSE. I had booted into another OS (not Linux or Windows) from a USB HD after setting the BIOS to CSM (non-UEFI) boot mode. I’ve done this many times. Upon putting the BIOS back into UEFI boot mode, I could only boot into Windows from the HD, and the Grub2 menu didn’t appear. I didn’t have my SUSE installation disk with me today and was not able to create another. I tried many things, including an OpenSUSE rescue DVD and Super Grub2 Disk. Nothing seemed to be able to handle fixing Grub2 in conjunction with UEFI. When I got home, as a final effort, I thought I’d see if I could reinstall OpenSUSE as a refresh or upgrade. I was getting to the point of trying Linux Mint, because I could find absolutely nothing useful about repairing Grub2 with UEFI on OpenSUSE. I may switch if this keeps happening. In case you didn’t notice, Grub2 is quit complex. Anyway, the resinstall worked as an upgrade, getting me the Grub2 menu back, albeit with only SUSE on it. Thank goodness the reinstall bothers to install the boot loader. Then, I had to run Yast with “probe foreign OS” checked to get my Windows boot menu entry back. So, in a nutshell:

  1. Reinstall OpenSUSE in upgrade mode. Your data won’t be lost. Make sure you boot the DVD with UEFI enabled or you’ll get an alternate installer, and the boot loader won’t install correctly.
  2. Run Yast -> Boot Loader and reinstall to get your Windows menu item back.

I like and appreciate this product. Thanks to the team for all the hard work through the years.

Thanks I’m going to try this tonight. I had installed W7 and Opensuse 12.2 in UEFI mode and had to manually add the entry for windows to my grub2.

I’m going to upgrade, then try this feature first.

I too have lost the ability to boot openSuse when fooling around with other drives or things. When this happens, I simply boot using the SuperGrub2 disk, select boot from hard drive, and then reinstall grub2.

No need to reinstall openSuse. A reinstallation of guub2 will write the required data to the BIOS of your machine so it is recognized.

Thank you, Montana. I actually had booted to the HD using SuperGrub2, but I think my mistake was trying to use Yast to install Grub2. Do you have EFI? Could you provide the command line and parameters (if any) you used? (Like “grub2-install /dev/sda” or whatever)

Yes, my system uses EFI. I have an AMI BIOS.

I open a terminal:

su -
grub2-install

I reboot and all is well.

Take a look at https://forums.opensuse.org/showthread.php/490254-Grub2-weirdness?highlight=EFI
It describes my convoluted thinking and frustrations with accepting and understanding this EFI thing. Hope it helps you.

Bart