Recently I wrote about wanting to run multiple instances of Linux on the Mac Pro at work, using multiple drives.
OK, so Intel based Macs have an EFI, not a BIOS and so a standard PC install won’t work (that’s old news). The most common way to dual boot a Mac is to use rEFIt which presents a graphical menu on boot and lets you choose which OS to boot.
Unfortunately, it’s not possible to use rEFIt when using multiple drives and MBR installations (as I recently discovered).
However, it is possible to use rEFIt with an EFI-only Linux installation on other drives. Yipee.
So here’s how it could look, for example..
Drive one:
EFI partition
OS X
Ubuntu
Windows
Drive two:
EFI partition
Fedora 64bit
Drive three:
EFI Partition
Fedora 32bit
Drive four:
Something else again..
Either way, the good news is that it’s possible to do with an EFI-only install, however not all distros support this yet. Fedora makes this possible by using efidisk.img (available in both 32bit or 64bit).
Simply download the one you want and dd it to a USB memory stick. Plug it into the Mac, power it on and hold down the Alt key until the boot menu appears. If you’re using rEFIt, then just reboot and it should detect it. Either way, you should see an icon for the EFI installer.
During Fedora installer, use the whole disk you want to install onto. This will create the required EFI partition and install the boot loader there also. Before you finish the install, switch to terminal 2 and sync the MBR table (this is because GRUB needs it):
gptsync /dev/sdb
Now when you reboot, rEFIt should see it as an entry to boot to, as should holding down the Alt key on boot.
For Debian and Ubuntu it’s a little more complicated (but not impossible). I wrote an extensive post about Linux on an EFI only machine, to which this applies.
If you want to use the 64bit EFI loader for a 64bit install of Linux, then the EFI in your Mac must be 64bit. Else use my 32bit loader and choose the appropriate option from the menu.
The other unfortunate thing I discovered is that the Mac Pro I’m using has a 32bit only EFI. This means that I can’t install a 64bit EFI-only version of Linux on it. Time to ask Mike for a new Mac I think..
Update: There is a way around this and my updated tarball makes it possible to install 64bit Linux on a Mac with 32bit only EFI.