Linux on Mac Pro with multiple drives, for real this time

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.

16 thoughts on “Linux on Mac Pro with multiple drives, for real this time

  1. I used rEFIt with my Mac Pro, and it feels really smooth now. Triple partition with Ubuntu installed thru Windows, on a Mac, absolutely rocks. All my apps are so much better on Windows XP now compared to VMWare or Parallels. Nice.

  2. Marvelous, been looking to put linux on my mac pro for some time now, but as you know, efi has been the problem, saw this, thought yippeee! – dd efidisk.img to usb stick, reboot (from usb), now stuck at grub prompt with no idea how to start the install process (fedora 12 x86_64 dvd) ideas?

  3. OK, I think that it should be written to the entire disk, rather than a partition (it will overwrite the partition table, etc on the usb stick).

    You look like you’re on OS X, so open a terminal and try something like:
    diskutil unmount /dev/disk4s1
    dd if=efiimage.img of=/dev/disk4

    Then IGNORE the device when it’s re-detected (it now has a Linux FS on it). Reboot to the disk.

  4. I’ll give that a shot.

    I was getting ‘resource busy’ when writing to disk4, but not disk4s1, perhaps I should try to unmount first?

  5. Yep, that’s why I added the unmount command 😉 Don’t “eject” the usb drive, that removes the device entirely so that it’s not accessible under /dev.

    -c

  6. Had little success with the efidisk. On my Mac Pro it doesnt get past the Boot menu, the timer goes to zero. No more activity. Others have reported the same. Using the same USB on my macbook pro, it does continue, but the graphic is distorted.

  7. Hey Dennis,

    I haven’t tested this for a while, but I’ll get a memory stick and try it this morning.

    -c

  8. Hi Dennis,

    I just downloaded the Fedora 13 efidisk image and wrote it to a memory stick and it boots perfectly for me. It took about a minute to load, but eventually went to the Fedora welcome screen to select a language.

    If you’re using the 64bit efidisk, perhaps try using the 32bit. Also, at the boot menu, try adding a kernel option “nomodeset” to turn off kernel-based mode setting. Maybe that’s muddying the waters.

    Either way, the 32bit efidisk.img works perfectly on my Mac Pro 1.1. Let me know how you go.

    -c

Leave a Reply

Your email address will not be published. Required fields are marked *