Dual boot on a Mac - can't load the system

Hi everyone !

I’m trying to install OpenSUSE 11.4 (64bit with the server options included) on my Mac (Core 2 Duo 2.0 Ghz with 2 GB memory).
So I have sda2 the OSX, sda1 swap, sda3 is the bootcamp (windows), sda4 (ext4) and sda5(ext5).
I installed rEFIt 0.14 first, then I reboot with DVD on. The installation setup resized the Windows partition from Bootcamp, and create 3 other partitions (the sda1,4 and 5).
At the installation I choos MBR enable and “/” as home enable.
At the end of the installation I have the error about MBR, that can’t mount, or create the mount point? I’ll double check the exact message. Anyway, when I try to load OpenSUSE, is not working: can not load the system.

I tried to find on the installation menu a repair (I thought that I can find an utility to fix the MBR).

I don’t want to choose other distribution, because I used SuSE before, and I really like it, and of course this way I can learn more about troubleshooting a Linux installation on different environment :slight_smile:

Thank you,

That was wrong. reFit should be your main bootmanager, not Grub. Installing Grub in the Linux root partition is all you need.

I’m back with the error message:
Can not install grub

GRUB>setup --stage2=/boot/grub/stage2 --force-lba(hd0,5)(hd0,5)
Error 22: no such partition

First time I tried to install without enabling MBR.
So, I shouldn’t enable MBR ?
LILO, ELILO are not working because of the EFI, so only choice as boot loader is Grub.

As far as I know - although it might have changed - Legacy Grub doesn’t support EFI either. But this is not a problem since you’re not booting from Grub but from reFIT. I read Grub2 supports EFI. So Ubuntu/OSX dualbooters might go a total different way. It you install Grub in MBR, because the MBR is actually just emulated by reFIT, it won’t be synchronized anymore with the GPT. I thing reFIT has a shell that can resynchronize the MBR (and wipe out Grub anyway).

I have no idea how you can use logical partitions. If you did create them in openSUSE setup, it did modify the partition table (which is located in MBR) and so it modified the MBR. The only method I know - and used on 2 iMacs with 11.1 and 11.3 - is not to write in the MBR at all, which means not install Grub and not modify/create partitions. This method is guaranteed to work. You can use a swapfile in Linux since you won’t have a swap partition. The other option is to use Grub2 which is supposed to support EFI. But things might have evolved … I don’t know.

Hmmm … And where is the GPT partition ?
Here’s my fdisk on iMac with 11.3:

Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00002652

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          26      204819+  ee  GPT
/dev/sda2              26       21941   176029696   af  HFS / HFS+
/dev/sda3   *       21957       30385    67701904   83  Linux

You should choose “Create partiton setup” and “expert mode” in openSUSE setup. Anything else will mess up the GPT partition. However, if you don’t use reFIT because you have another bootmanager which doesn’t need GPT emulation, I’m not sure that you still need this partition. Also in this case you should be able to create other partitions. I don’t have a Linux system using true GPT. So I don’t know.

Just a stupid question: Are you still able to boot OSX … and how ?

Yes, I’m still able to reboot in OSX because of the rEFIt, it will let me choose from OSX, Bootcamp and whatever other options I have (Linux, or DVD).
I’m trying now an installation without installing GRUB. Hoping that rEFIt it will load the linux. If it’s not working, I’m going to bed, because is almost 2 o’clock in the morning and…

Nope, still not working. I installed without GRUB loader, actually without any loader, I saw the desktop (very impressed by the way) and I decide to try it right away. rEFIt is not loading the Linux…
I’ll study more tomorrow.

You have to install Grub … but not in MBR, in the bootsector of the Linux partition. You should not write anything to MBR, neither Grub nor a Generic boot code. And you have to explicitely prevent openSUSE setup from doing so - it is (unfortunately IMO) ‘designed’ to dualboot with Windows >:( - not with OSX or another Linux.

Have a look at these pictures (on 11.3): (net-)installation on a multi-boot system: MBR overwrite](http://forums.opensuse.org/english/get-technical-help-here/install-boot-login/453540-net-installation-multi-boot-system-mbr-overwrite.html#post2285422) or at this slideshow (11.4 in a virtual machine): openSUSE 11.4 - vm installation guide

Last time I exposed this method to somebody, he finally managed to get openSUSE installed on his MacBook… but could not explain how he did. I hope you’ll pay more attention and be able to report afterwards. I haven’t done it very often. And as I said, this method might be obsolete nowadays - although it should still work.

It didn’t worked this time either, trying to create partition in expert mode.
Now, I choose UUID instead of device, and at the end it gave me the error that could not mount the partition.
So now it doesn’t say cannot find partition, but not cannot mount partition.
From the start says that mount point will be in hda3 and that one is the Bootcamp (windows OS-which is just a blank FAT32 system, I mean with no Windows on it).
I’m wondering if there is the problem?

Here is the GPT partition table and MBR:

*Current GPT partition table:

Start LBA End LBA Type

1 869898240 874096639 Basic Data
2 409640 816201767 Mac OS X HFS+
3 816465920 869898109 Basic Data
4 874096640 914788351 EFI System (FAT)
5 914788352 939610111 Basic Data
6 939610112 976773119 Basic Data

Current MBR partition table:

A Start LBA End LBA Type

1 409640 816201766 af Mac OS X HFS+
2 816465920 869898108 0c FAT32 (LBA)
3 * 869898240 874096638 82 Linux swap / Solaris
4 1 1 ee EFI Protective

MBR contents:
Boot Code: Unknown, but bootable

Partition at LBA 869898240:
Boot Code: None
File System: Unknown
Listed in GPT as partition 1, type Basic Data
Listed in MBR as partition 3, type 82 Linux swap / Solaris, active

Partition at LBA 409640:
Boot Code: None
File System: HFS Extended (HFS+)
Listed in GPT as partition 2, type Mac OS X HFS+
Listed in MBR as partition 1, type af Mac OS X HFS+

Partition at LBA 816465920:
Boot Code: None (Non-system disk message)
File System: FAT32
Listed in GPT as partition 3, type Basic Data
Listed in MBR as partition 2, type 0c FAT32 (LBA)

Partition at LBA 874096640:
Boot Code: None
File System: ext4
Listed in GPT as partition 4, type EFI System (FAT)

Partition at LBA 914788352:
Boot Code: None
File System: ext4
Listed in GPT as partition 5, type Basic Data

Partition at LBA 939610112:
Boot Code: None
File System: ext4
Listed in GPT as partition 6, type Basic Data*

With the oldest method I described, I didn’t created partitions in Linux setup at all, that way the MBR and GPT remained synchronized. We have another iMac with triple boot OSX/openSUSE/Windows. It looks the same as the dualboot with sda4 as the Windows partition. I created the partitions for Linux and Windows under OSX with the disk utilities - the Windows partition has to be the last one. In Linux setup, I selected sda3 and just changed its filesystem to ext4 - since it was created with DOS type (don’t remember exactly) in the disk utilities. Changing the filesystem of a primary partition does modify one byte in the MBR (the partition ID) but doesn’t alter the geometry, so this is fine.

From the start says that mount point will be in hda3 and that one is the Bootcamp (windows OS-which is just a blank FAT32 system, I mean with no Windows on it). I’m wondering if there is the problem?

Well, it should not be the Windows partition for sure.

Which command did you use to get these information?
Can you see all those partitions in OSX ?

It looks like you’re using the GPT under Linux - which should be the best thing to do. As I said, the method I used is kind of deprecated. There is a need for a recent howto on this topic.

If I had a MacBook for testing, I would probably install Ubuntu (and Grub2) - a minimal Ubuntu would do it too - see if it can boot all the systems without using reFIT and if so, install openSUSE in other partitions and boot it with Grub2 directly and/or by chainloading openSUSE’s Grub installed in its root partition - but not in MBR. I read in the forum that you can use Grub2 now in openSUSE, don’t know how many people have tried it yet and haven’t seen that you had the choice during setup. It has to be installed at a later point, which wouldn’t help you in this case.

Yuhuu! I did it !

First, I ereased Bootcamp, and create 3 partitions in OSX with disk utilities: 2GB swap, “/” and “/home”. Than I boot from dvd, edit those 3 partitions in expert mode. Actually, with SuSE I could resized the partitions to create a 2 GB swap partition.

Now I’m writing from OpenSuSE’s Firefox browser :slight_smile:

With rEFIt partition inspector I could get the GPT and MBR.

That’s good to know.
Glad it worked. Congrats! Would you mind posting the output of fdisk -l ? (I’m curious).

Here is my new GPT:

  • Device Boot Start End Blocks Id System
    /dev/sda1 1 409638 204819 ee GPT
    /dev/sda2 409640 816201766 407896063+ af HFS / HFS+
    /dev/sda3 816463912 820656874 2096481+ 82 Linux swap / Solaris
    /dev/sda4 * 856737824 896487446 19874811+ 83 Linux*