Jump to content
  • 0
Sign in to follow this  
ikt

OS X and Linux dualboot with GRUB2

Question

Hai there

I'm having troubles getting GRUB2 to chainload OS X.

Basically OS X works, Linux works and Windows works, except I can't boot without the Flash drive containing the OS X Installation.

My hard drives are like this (in Linux):

/dev/sda1 NTFS Windows bootloader

/dev/sda2 NTFS Windows 7

/dev/sdb1 NTFS Data

/dev/sdb2 HFS+ OS X 10.8

/dev/sdb3 EXT4 Crunchbang

I'm using the original Windows bootloader and Windows is totally self-contained in the SSD, as is Linux/OS X on the hard drive. I have installed Chimera 2.0.1 on the OS X partition. I've copied boot0 to /boot/chameleon/boot0 on the Linux partition, as well as just putting it in the root of the OS X partition.

I can't get GRUB2 to load OS X. The entry in /boot/grub/grub.cfg is this:


menuentry "Mac OS X (on /dev/sdb2)" {
insmod hfsplus
set root='(hd1,2)'
search --no-floppy --fs-uuid --set=root cf082926772bae5b
chainloader (hd1,3)/boot/chameleon/boot0
}

If I'm correct, the GRUB and Linux mapping is like this:

/dev/sda1 (hd0,1)

/dev/sda2 (hd0,2)

/dev/sdb1 (hd1,1)

/dev/sdb2 (hd1,2)

/dev/sdb3 (hd1,3)

I pretty much tried everything but it always returns "file not found", "invalid signature" or in one case "Chain booting error_" when I try to chainloader /boot0

Any of you out there who have gotten GRUB2 and OS X playing along nicely?

Edited by ikt
See last post for information about how it's solved.

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Yeah, I went through the first link before making this thread. I just tried the things suggested in the second link, but they have no effect. Using GRUBs default entries makes it restart. If I substitute the last parts it'll say it hasn't seen a file and "chainloader /boot" results in a "Chain load error."

I've never gotten it to display anything besides error messages. Using the default 64-bit entry in GRUB2 just gives a black screen and a reboot.

Bleh, chainloading horror.

Share this post


Link to post
Share on other sites
  • 0
Yeah, I went through the first link before making this thread. I just tried the things suggested in the second link, but they have no effect. Using GRUBs default entries makes it restart. If I substitute the last parts it'll say it hasn't seen a file and "chainloader /boot" results in a "Chain load error."

I've never gotten it to display anything besides error messages. Using the default 64-bit entry in GRUB2 just gives a black screen and a reboot.

Bleh, chainloading horror.

Well... To be completely honest, I only made this once a few years ago but in the end, I've choose to stay with Chameleon as my default boot loader as he was capable to handle all OSs that I had on my machine, then now I'm using Clover and he also can handle any EFI capable OS without issues...

Just a curiosity... Why you want GRUB as your default boot loader if there are many boot loaders capable to natively boot OS X (Chameleon, Clover and XPC) and also any Windows or UNIX like OS installed under Legacy or UEFI BIOSes???

Share this post


Link to post
Share on other sites
  • 0

Ah, great! I got it working now. It doesn't boot into OS X yet, it hangs somewhere in the process, but it'll chainload fine now.

The thing I used is this:

menuentry "Mac OS X (on /dev/sdb2)" {
insmod hfsplus
set root='(hd1,2)'
search --no-floppy --fs-uuid --set=root cf082926772bae5b
multiB{censored} /boot
}

I removed the search --no-floppy --fs-uuid --set=root cf082926772bae5b in previous attempts while using multiB{censored}.

I think the problem is somewhere in the DSDT files, so I'll need to check that out.

Why does it load fine with the USB key but whenever I load it from its own, it gets kernel panics and all those unpleasant things?

Well... To be completely honest, I only made this once a few years ago but in the end, I've choose to stay with Chameleon as my default boot loader as he was capable to handle all OSs that I had on my machine, then now I'm using Clover and he also can handle any EFI capable OS without issues...

Just a curiosity... Why you want GRUB as your default boot loader if there are many boot loaders capable to natively boot OS X (Chameleon, Clover and XPC) and also any Windows or UNIX like OS installed under Legacy or UEFI BIOSes???

Well, it was there and it worked fine. There's not really a reason besides me still being very new to this all. And I had very bad experiences with OS X bootloaders in the past :P

Edited by ikt

Share this post


Link to post
Share on other sites
  • 0
Ah, great! I got it working now. It doesn't boot into OS X yet, it hangs somewhere in the process, but it'll chainload fine now.

The thing I used is this:

menuentry "Mac OS X (on /dev/sdb2)" {
insmod hfsplus
set root='(hd1,2)'
search --no-floppy --fs-uuid --set=root cf082926772bae5b
multiB{censored} /boot
}

So, you've got just the Chamelon "boot" file in your MacOS partition?

Share this post


Link to post
Share on other sites
  • 0
So, you've got just the Chamelon "boot" file in your MacOS partition?

Sorry for the late reply :)

Yes, apparently I moved the "boot" to the root. I do recommend you to use just one bootloader, now my laptop is a mess of thee seperate bootloaders.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.