Dual Boot

Environment

The dual boot machine is a 11-inch MacBook Air (early 2014), 1,4 GHz Dual-Core Intel Core i5.

Linux

I’ve installed Linux on many machines. I’ve even installed it on a few Mac machines. What I never got right is how to dual boot Linux and macOS. The missing piece of the puzzle was a tool called bootloader. When installing a Linux on a non-Mac, bootloader is installed by default and it works just fine. The problem is that Macs have a different way of loading the operating system, so a special bootloader is required.

Ubuntu

To make things as easy as possible for me, I’ve decided to dual boot Ubuntu. I have some experience with it, and as far as I know, it’s the most user friendly Linux.

I was installing Ubuntu on a MacBook Air with (with no DVD drive) so the only option was booting from a USB stick. Official Ubuntu Create a bootable USB stick on macOS instructions were good. The only thing that I didn’t like was that they recommend installing at tool (Etcher) to create a bootable USB stick. I prefer not to install tools that I will use only once, especially when there’s a built in command line tool already in macOS that will do that. See How to install Ubuntu on MacBook using USB Stick.

rEFInd

Bootloader that was recommended at several places was rEFInd. The trick is that recent Macs have SIP (System Integrity Protection). To install rEFInd, you have to disable SIP.

Boot into recovery mode (restart and hold command+R), open Terminal and execute this to disable SIP.

csrutil disable

Reboot. Download rEFInd. Install it.

./refind-install

Boot into recovery mode again and enable SIP.

csrutil enable

For more information see How to Install and Dual-Boot Linux and macOS.

Operating System Updates

Some macOS and Ubuntu updates will delete rEFInd. You’ll have to install it again.