Dual Boot Mac OSX & Fedora 17
Hardware
Dell E6400 Latitude
80 GB HDD
4 GB RAM
Software
Lion 10.7.4
Fedora 17 64 bit version
I installed OSX as per Install OsX using EDP (http://www.osxlatitude.com/edp/).
At the beginning of the install, used Disk Utility to create 2 partitions of equal size and formatted the first partition as the OSX partition. This partition I called MyOSX.
Completed the installation all the way through and tested everything as ok.
I installed Fedora 17 onto the second partition and of course Grub becomes the boot loader. From the Boot loader you will see two entries for Mac OSX, a 32 bit version and a 64 bit one. THESE DO NOT WORK. I assume it does this as Fedora may recognise Mac as another Linux system (since Mac is based on BSD). Now comes the fun part of getting Grub to kick off OSX.
From within Fedora, I opened Files and I could see a device called MyOSX. When I double-clicked it, it asks for the root password and there is the OSX partition in plain view.
Next I opened a Terminal window and went into superuser mode by typing “su -†and entered the superuser password.
I typed “mount†in order to get some info. I need to see where the OSX partition got mounted and where the Fedora boot folder is mounted. For me the MyOSX partition - /dev/sda2 - got mounted at:
/run/media/<my name>/MyOSX
The boot partition is a little bit involved to decipher. The boot folder is on /dev/sda4, I looked for /boot to determine this and saw that it was of the type ext4.
Next, in the Terminal session I type parted. And from within parted I typed print to display the hard disk partition. Here I saw that partition 4 was of the type ext4 so that at an educated guess was where the /boot folder was mapped.
In the terminal session I type “nautilus†to run a GUI of the file manager in superuser mode.
Next I expanded the File System folder and went through the tree to get to this folder on the MyOSX partition:
/run/media/<my name>/MyOSX/usr/standalone/i386
Right-mouse clicked on the i386 folder and selected copy.
Traversed back to the root of the file system and went to:
/boot/grub
right-mouse click and selected Paste to get the entire i386 folder from the Mac partition copied here.
Now it's time to edit the Grub loader.
From within Terminal still in superuser mode I typed in:
vim /etc/grub.d/40_custom
This file is where you can add custom menu entries to the grub loader.
After the last commented line in this file press the “insert†key and I added the following:
menuentry “OSX†{
set root=(hd0,gpt4)
chainloader /grub/i386/boot0
}
To save the file press “esc†then “:wqâ€
I used vim as that is what I am used to.
Now that the 40_custom file has been edited it needs to be added to the grub.cfg file in the following fashion:
Still within the Terminal session as superuser type in:
grub2-mkconfig -o /boot/grub2/grub.cfg
This combines the edited file into the boot.cfg file and you can check the file by typing in:
less /boot/grub2/boot.cfg
Scroll through the file to the end and you should see the added entry at the bottom.
Close all applications and restart the laptop. On reboot the Grub loader will start and there's a new entry at the bottom called “OSXâ€. When I did this I held my breath and pressed enter on “OSX†and sunnofagun if it didn't load up my Mac Lion system. It all worked fine. Then I shut it down and restarted to test the Fedora partition. It worked as well.
So there you have it. This is what I did to get a dual booting Mac/Linux Latitude.
I tried the method described at http://www.osxlatitude.com/dual-boot-osx-windows-made-easy/ but it didn't work for me. It just returned my system back to having Lion boot with no other option. I guess that was for a Mac/Windows/Linux boot.