Install rEFInd boot manager

From XPUB & Lens-Based wiki

Purpose

To install an alternative EFI boot manager on an Apple machine.

Details

The default EFI boot manager from Apple is very limited. This recipe will show you how to install rEFInd, a fork and successor of the now unmaintained rEFIt. With rEFInd you will be able to boot from different operating systems, located on different drives, including external storage, like you would expect from any modern EFI compliant system.

Step by Step recipe

cd Downloads
unzip refind-bin-0.8.3.zip
sudo mkdir /Volumes/esp
sudo mount -t msdos /dev/disk0s1 /Volumes/esp   # adjust disk ID accordingly if system on external disk
  • If /Volumes/esp/EFI is missing (likely if running a clean install), then create it:
sudo mkdir /Volumes/esp/EFI
  • Copy rEFInd to the EFI partition:
sudo cp -rv refind-bin-0.8.3/refind /Volumes/esp/EFI/  # adjust path accordingly
sudo rm -rf /Volumes/esp/EFI/refind/drivers_ia32
sudo rm /Volumes/esp/EFI/refind/refind_ia32.efi
sudo mv /Volumes/esp/EFI/refind/refind.conf-sample /Volumes/esp/EFI/refind/refind.conf
sudo bless --mount /Volumes/esp --setBoot --file /Volumes/esp/EFI/refind/refind_x64.efi
  • Test your new boot manager: reboot and if all goes well the rEFInd menu should be visible, congratulations and welcome to ${CURRENT_YEAR}!

What to do after the movies?

  • /Volumes/esp/EFI/refind/refind.conf defaults are sound, but the scanfor option that is well commented in the config file might be useful to tweak in some cases where rEFInd should scan for more than the default EFI devices connected to the machine.
  • Updating the boot manager can be done as simply as removing the old refind folder and copying the new one, followed by the blessing of the EFI partition.
  • System updates from Apple are very likely to bring back the old Apple EFI boot manager, to bring rEFInd back, simply mount and re-bless the EFI partition.