Triple-booting Ubuntu on MacPro w/ Win10 and High Sierra (two separate drives) I am running a 2009 MacPro (5,1) with two separate hard drives: on one, I've installed MacOS High Sierra. On the second, I used Bootcamp to install Windows 10 (legacy/BIOS, not EFI), then installed Ubuntu 18.04 using this guide. I can boot into all three systems using the Apple Startup Manager (holding ALT during bootup). The issue is that when I open High Sierra's "Startup Disk" menu (in System Preferences), I do not see Ubuntu. Only MacOS and Windows/Bootcamp appear in this menu. I'd like to boot into Ubuntu using the "Startup Disk" menu, and I think it is possible if I modify my EFI partitions as described in this second guide.

What would be the right way to do this?

/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *2.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Mac Storage             1.2 TB     disk0s2
   3:       Microsoft Basic Data BOOTCAMP                485.9 GB   disk0s3
   4:           Linux Filesystem                         300.1 GB   disk0s4
   5:                 Linux Swap                         15.0 GB    disk0s5

/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS Macintosh HD            999.3 GB   disk1s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk1s3
You can make Ubuntu appear in the Startup Disk pane of the System Preferences application, but unfortunately you can not select Ubuntu as the system you want to use to start up your computer. For example, if you try with macOS 10.13.6, you get the following error message.



However, if you have rEFInd properly installed, you can use an application to select the system you want to start up your computer. For example, I have the following rEFInd icon on my dock.



Clicking on the icon produces the following window.



Here, I can select the startup system.

The same is true for Ubuntu. I have the following rEFInd icon on the Ubuntu launcher.



Clicking on the icon on the Ubuntu launcher produces the following window.



Basic steps to implement this answer


Allocate a small (200 MB) "MSDOS (FAT32)" partition for rEFInd. I would suggest at the end of disk1. The command for doing this is given below.

sudo diskutil resizevolume disk1s2 999G 1 MS-DOS REFIND 200M



  Note: The above command will move up disk1s3 and place the new partition disk1s4 last.

Download rEFInd.
Install rEFInd on the "MS-DOS (FAT)" partition.
Configure rEFInd to recognize the 3 operating systems.
Install the software (scripts) in each operating system to choose the default operating system to boot at startup.


Brief explanation of use

rEFInd does not change the Startup Manager menu, except rEFInd itself will now appear in this menu. In fact, you will use the Startup Manger to make rEFInd the default operating system to boot at startup. rEFInd will the silently instructs the firmware to boot what ever operating system is defined as default in the rEFInd configuration file. The software scripts you install and execute on each operating system (as shown in my answer) rewrite the rEFInd configuration file to change the default operation system. – David Anderson 21 mins ago   

So, if the firmware is booting macOS through a default boot to rEFInd and you hold down the option key at startup to boot to Windows, then this boot to Windows is temporary. Next restart will boot back to rEFInd, then to macOS. If you hold down the control key while selecting Windows from the Startup Manager, then Windows will become the default operating system and rEFInd will be bypassed. 

You can use the Startup Manager to enable or bypass rEFInd. The firmware has two modes to startup the Mac. The first mode boots the default operating system every time. The other mode, boots a selected operating only on the next startup and leaves the default unchanged. The rEFInd Boot Manager only uses the second mode. So, when you use rEFInd, you are actually booting the Mac twice on each restart. The first boot is to rEFInd and then second boot is after rEFInd instructs the firmware to boot to the desired operating system