Windows 7,8, Linux - Boot issue after OpenSuse 13.1 Installation.

I have 120 GB hard drive in my laptop.
I installed windows 7 on first 30 GB of the hard drive which of course created System partition and actual Windows partition.
Then I created next 30 GB partition for Windows 8 and a 20 GB partition for Data ( All NTFS).

Left over space I used for OpenSuse install with default settings - Only thing I changed was enabling boot from MBR during review page before actual install.

Before OpenSuse was installed both windows 7 and 8 did boot up from that new Boot screen that comes with Windows 8.

After Installation however the only systems that get detected are OpenSuse and Windows 8 - Windows 7 is totally gone from grub.

I can access the windows 7 partition on both windows 8 and OpenSuse (mounting required) but I do not know how to make it detect Windows 7 along side those two.

If you have any suggestions I will be happy to try them out.

Thanks in advance

Well … all Windows installations normally share a single loader configuration. So grub2 menu entry that is titled “Windows 8” in reality points to Windows loader which has own menu. You should be able to configure BCD in Windows 8 to let you select between Windows 8 and Windows 7.

I guess not that many users (at least those using Linux) have multiple Windows installed, so nobody noticed it so far (or at least did not complaint loud enough :slight_smile: )

I think your problem is, that you don’t have two independent Windows installations. When installing Windows 8, it installed its bootmanager into the Windows 7 partitition to give you the choice between Windows 7 and Windows 8.
And the Linux bootmanager now gives you the choice between Linux and the Windows bootmanager ( named as Windows 8).
What happens if you choose Windows 8 from the boot menu ?
I think , you should see the boot menu to choose between Windows 7 and Windows 8 ( the same which you saw before installing Linux).


What happened before I installed OpenSuse was that Indeed I had an option to choose between windows 7 and 8.
After the Install however when I select Windows 8 from Grub it boots straight to Windows 8.

Interesting. What grub2 does is to load partition boot block and jump to it. So unless Windows puts some magic in MBR, I’d expect it to behave identical with “normal” boot. I briefly tested on VM with Wndows 7 that I have and Windows displays boot menu after being launched from grub2. Granted, I do not have Windows 8 nor dual Windows installation.

Did you try to disable fast startup in Windows 8? I would rather suspect it than anything.

For some reason OpenSuse or Grub itself somehow messed up my BCD and as mentioned before it booted straight to Windows 8.

Now it is fixed as I and my friend got round looking for possible scenarios and we found similar case where guy installed windows 8 after Windows 7 and Opensuse and then fixed his grub - That got us thinking that if we fixed boot for windows 8 then fixed grub maybe it would work. And so it did.

Booted from Windows 8.1 Disc and accessed Command Prompt.

Typed in:

bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd

Which set Windows 8 boot loader to show Windows 8.1 and Windows 7.

Then fixed Grub by booting from live cd and using konsole:

sudo mount /dev/sdXY /mnt

**sudo mount --bind /dev /mnt/dev **
**sudo mount --bind /dev/pts /mnt/dev/pts **
**sudo mount --bind /proc /mnt/proc **
sudo mount --bind /sys /mnt/sys

sudo chroot /mnt

grub2-install /dev/sdX
grub2-install --recheck /dev/sdX

grub2-mkconfig -o /boot/grub2/grub.cfg


Now when I select Windows 8 from Grub it indeed goes to Windows 8 Bootloader and allows me to enter Windows 7 and Windows 8.1.**

Thank you for suggestions - This problem is now SOLVED.**

If you did not use MBR before (and MBR is not default during openSUSE installation) you need to fix YaST configuration, otherwise you get problem during grub2 updates in future. Could you show /etc/default/grub_installdevice?