Triple boot on Macbook Air with external SSD

bootcampdual-bootssd

I own a 2015 Macbook Air running Mojave. I plan to triple boot Mac, Windows 10, and Linux by installing them (Windows and Linux) on an external SSD and booting from there. Preferably, I don't want to use rEFind or similar, as I don't want to make any (major) changes to my Mac.

In my search for answers, this thread in particular caught my eye as a viable solution, however a full explanation on how to resolve the problem was not given.

Basically, I would like to have a full list of steps (doesn't have to be too detailed) that would allow a new-ish user like me to complete a triple boot from start to finish, elaborating on this step:

Use more than one EFI partition. A drive can have more than one EFI partition. Additional EFI partitions do not have to reside at the beginning of the drive.

Thanks in advance!

EDIT: I have found a good resource over here which covers how to setup up all the boot files, and installs rEFInd on the external drive rather than the internal one. I will edit again to confirm if it works 🙂 In the meantime, I am satisfied with existing person's documentation of the beginning steps.

EDIT 2: I have successfully triple booted from an external SSD, so thanks to everyone who helped me plus the random writer on Medium. It seems like Linux distros are getting better every day, because apparently by mounting the drive's EFI partition to /boot/efi during installation, Manjaro's boot manager handles both the Linux and Windows operating systems. To be honest the hardest part was writing Windows to the USB. I still have a few problems with Linux to sort out (no wifi drivers, Nvidia graphics card causing GRUB to not boot) but everything's well documented.

Best Answer

Per your request from the below quoted text,

elaborating on this step: Use more than one EFI partition. A drive can have more than one EFI partition. Additional EFI partitions do not have to reside at the beginning of the drive.

here is some info (I will make edits shortly when I have more time):

An EFI partition (sometimes referred to as an ESP partition) is nothing more than a msdos formatted partition at the beginning of your drive. Contained in this partition is an EFI folder. Within that EFI folder, is the apple bootloader (the same thing as refind, but made by Apple). When you format any drive on a mac using disk utility with apfs or hfs+ filesystem, your mac automatically creates an EFI partition on that drive. However, it only installs the bootloader on your main internal drive. This means, that any disk utility externally formatted mac drive contains an efi partition, but your mac does not use it because within that partition, there is no EFI folder or bootloader. It is essentially completely unused.

When you install refind to an external disk on its EFI partition, you are essentially installing a non-apple bootloader on that drive. When your mac boots, it will look for a bootloader. When you have 2 different bootloaders (Mac OS default bootloader + refind) on two different drives, in two different EFI partitions, it can create unnecessary complications. Although This scenario is still possible, and will work, it is completely unnecessary, redundant, and confusing (for your mac). That being said, I would strongly advise to back up your original bootloader on your main hard drives EFI partition (as simple as making a duplicate copy of the original EFI folder inside the EFI partition using finder), and then installing refind to that drives EFI partition. This will eliminate confusing your mac in a dual/tripple boot scenario. To reinstall your macs original boot configuration, just deleted the EFI folder with refind on it, and rename your backup EFI folder (EFI Copy) to EFI.

EDIT:

Now that I think about it, I havent messed with refind and bootloaders and bootmanagers (refind) on macs for a while. So the above answer i posted is actually not totally correct. Bootloaders/bootmanagers on macs are a lot less complicated then they actually seem, but there are definitely things to consider particular to your setup. Macs DO overwrite refind when upgrading your os and sometimes on updates as well. This requires you to reinstall refind, or touch refind on your mac to indicate that it is the default bootmanager. I prefer just reinstalling since its automated and easy.

If you want more information on why i recommend just installing refind to your main hard drive and how it could complicate things otherwise, i would strongly you read the refind documentation from the developer (smart and great guy) at http://www.rodsbooks.com/refind/.

Be sure to read up on the sections about disabling sip before installing http://www.rodsbooks.com/refind/sip.html

After reading through all the documentation, if you still do not have a grasp on things, you could try emailing the developer with further questions. But be sure you understand the documentation as best as possible before you bother a busy man with something that is possibly already documented.