I rescued a Macbook Pro from ecycle at work, and took the chance to triple boot it. It’s a 2011 15″ model, with an i7 processor, so fairly recent and powerful (Macs have a long lifespan).

I came across many guides to triple-booting, including:
http://www.travisllado.com/2015/05/triple-booting-2015-macbook-pro-with.html
https://www.innoq.com/en/blog/triple-booting-a-mac/

How to Triple Boot a MacbookPro (with Retina display) with OSX, Windows 7 and Linux

They all have a fairly detailed list of steps of what to do/which order to install in, but none of them detailed why the particular order in which they installed was necessary.

After having some failures, I found that the reason their steps worked was due to the necessity of a hybrid MBR partition scheme for Windows to boot. After partitioning with Mac OS’ Disk Utility to create the Linux partition and installing Linux; or after using gparted in Linux to partition and then install Linux – it’s necessary to use gdisk to recreate a hybrid MBR. Otherwise, Windows does not boot.

Here’s what I did:

  1. Use bootcamp to create the Windows partition and install Windows (8.1 in my case). I left the Mac OS partition larger than desired to leave room to repartition and install Ubuntu.
  2. Boot into Mac OS and resize the Mac partition, and create a new partition for Linux.
  3. Using a live cd installer, reformat the reserved Linux partition and install Ubuntu.
  4. Boot into Ubuntu, and using the gdisk utility from the terminal, create a hybrid MBR, including the Mac, Linux, and Windows partitions as those to include.
  5. From Mac OS, install refind. Preliminary work here is to disable System Integrity Protection (SIP), which I did via a bootable refind CD.

And I’m successfully booting 3 operating systems with no issue.