Dual boot on separate drives problem

Dear all,

I tried installing Open Suse 13.2 and Windows 7 in a dual boot mode on separate hard drives. I managed to install Linux on the selected hard drive (Win 7 was already on), but it was not possible to boot from it. As far as I understand one has to boot from the Linux drive and make the proper mapping in grub (according to https://en.opensuse.org/SDB:Dual_boot_on_2_drives).
Unfortunately, booting from the Linux drive was impossible. I tried, disabling the other drive and the DVD form the BIOS by leaving only the Linux drive, but still I was not able to boot. The only suspicious part is that the BIOS designates my second hard drive as “removable media”. The PC where I try to complete the installation is about 7 years old, so there is no UEFI.

I would appreciate your help.

That opensuse wiki page on dual boot is a bit old. It’s from the time when opensuse was using grub (or grub1 or legacy grub).

But now I’m not sure how you installed.

Typically, you can tell the BIOS which disk to boot first.

So here’s some information from you that would be helpful:

  1. How did you boot the installer?
  2. Does the opensuse system use grub (original legacy grub) or grub2 or something else?
  3. Can you boot into your system with the supergrub disk (use google to find that)?

Hi,

I installed Opensuse 13.2 in much the same way I did on my other PC. The problem is that the bios does not see any possibility to boot.
I didn’t try the supergrub disk but I will definitely will. I can’t really see what was installed on the hard drive because windows can’t see it. Therefore, I can’t tell which version of grub is used.

If you went with the install defaults, then you are probably using grub2. If you upgraded from an older opensuse system (instead of doing a clean install), then I’m not sure what you used.

If you are able to boot the system with a supergrub (or supergrub2) disk, that will make it easier to resolve the problems.

Thank you for your help and for your suggestions.

In detail:
I did a clean install of Opensuse 13.2. I used a separate hard drive, which was at that time visible under windows 7. I did clean install 2 times, once with my custom partitioning - ext4 for / and /home and the second time I used Open Suse default partitioning. I did the second install, because I was thinking, that something went wrong when using the expert partitioner. Unfortunately, to no avail. What open suse suggested was using different than ext4 formatting, for / and /home, but kept the sizes of / /home and /swap.

I found many options for super grub, do you have some particular suggestion that in your experience works best?

With MBR you must install something in the MBR. either generic boot code (and set a boot flag and install grub2 to the boot partition) or install grub2 code to MBR. Be sure those things are set. Should be no problem with expert mode so you can use what ever file system you want

Hi!

Quite often I saw that 13.2 was NOT installing any Grub at all by default! Have an eye on the summary screen during installation, before the copying of files to the HDD starts:

One of the first options is for Grub to be installed in MBR or / and more than once I had BOTH options disabled. Choose to enable one or the other option before proceeding with installation.

It won’t explicitly install grub if booted in EFI mode but it will want an efi FAT format boot partition. If booting MBR then you should always verify where grub2 goes

Always legacy install, in my case… :slight_smile:

Some general comments on using a separate disk.

By far, the easiest way to get that working is to install grub2 in the MBR of the primary disk. There might be reasons to not like this, but it is the most likely to work without extra effort.

Another method is to set the boot order in the BIOS to boot the second disk. But for that, you have to be careful when installing. When the BIOS sets the boot order that way, it acts as if the second disk is really the first disk. So the BIOS calls stored in grub boot code need to know this. When installing grub2, there’s a place where you can set the disk order, and you have to set the second disk (the one you are booting from) to be first in disk order. That’s what ensures that the boot code uses the same disk order as the BIOS.

Another method, and what I would probably use, is to use the Windows boot manager. To do that, I would install booting from the root partition of the linux disk. But I would configure it so that the disk order has the Windows disk first in boot order. Because that is what is going to be assumed by the BIOS calls made from the Windows boot manager.

Thank you all for your question,

I just checked what the installation summary is doing (I typed those by reading them form the screen).


Create subvolume boot/grub2/i386-pc on device /dev/sdb5
Create subvolume boot/grub2/x86_64-efi on device /dev/sdb5
Create subvolume opt on device /dev/sdb5
Create subvolume srv on device /dev/sdb5
Create subvolume tmp on device /dev/sdb5

In this case /dev/sdb is my second hard drive, which is fine. These are the default setting proposed by open suse 13.2 used for my current installation.
The PC I am installing on is quite old, therefore I presume that it uses legacy boot. This makes me think that the grub2 option and efi are causing the problems.
Unfortunately, I am not sure. In general, is it possible to install in such a way, so that legacy boot is used.

I would try booting to rescue console from the installation DVD, enter

fdisk -l

and do a

grub2-install /dev/sdX

in your case sdb, I guess…

Reboot and see what happenz… :slight_smile:

I got the error


Installing for i386-pc platform
grub2-install: error cannot open directory `/mounts/mp_0001/boot/grub2/i386-pc` : No such file or directory


which makes me think that the PC is 32 bit and I am installing 64 bit OS.


uname -a

Linux Rescue 3.16.6-2-default #1 SMP Mon ...    i686 i686 i385 GNU/Linux

What is your Mobo? 32bit is really old (using here some 13 year old notebooks on 32 bit) or embedded?

Hi,

it is intel i3-550 quite old desktop pc. It is actually not mine, I just got it for temporary use. I will now try to install open suse 13.2 32bit.
This was quite surprising, I didn’t expect it is 32 bit. Haven’t seen one in a while :shame:
I hope this will fix the problems.

Hi,

i just tried installing 32bit, the same problem the same error when trying to install grub on my linux hard drive with

grub2-install /dev/sdb.
Installing for i386-pc platform
grub2-install: error cannot open directory `/mounts/mp_0001/boot/grub2/i386-pc` : No such file or directory

Actually windows system information says that the system is 64 bit, therefore I got really confused

i3 is definitely 64 bit.

Problem is elsewhere, keep looking, eg. in BIOS if it supports UEFI…

PS: If you re-install again get rid of BTRFS and use EXT4.

Here:

https://forums.opensuse.org/showthread.php/503246-Bootloader-not-restored-(when-recovering-image-created-with-Clonezilla)

is proposed

grub2-install –boot-directory=/mnt/boot /dev/sdX

Hi raspu,

I have a dual side DVD with 13.2 64-bit and 13.2 32-bit. Funny enough when I flip to the 64-bit side and run the rescue disk from uname -a I get that I am running 32 bit, and from the 32-bit side I get the information that I am running 64bit. Quite strange, it seems that it is flipped. Now I will download 13.2 - 64 bit and will try to do clean install.

Hi,

i just tried installing suse 13.2 form a newly downloaded iso. It showed the same errors. I still I can’t boot.


grub2-install /dev/sdb
Installing for i386-pc platform
grub2-install: error cannot open directory `/mounts/mp_0001/boot/grub2/i386-pc` : No such file or directory

the other option


grub2-install –boot-directory=/mnt/boot /dev/sdb

gave me the error

grub2-install: invalid option -- 'b'

I checked the bios, it is legacy mode. I also used ext4 as you suggested.

Hmm, I would make the suse HHD sda, switch the HDDs or remove Win HDD for installation. Plug in after successfull boot of oepnsuse (and shudown), update Grub via GUI in opensuse.