Note: 1) Better install rEFInd on EFI partition, since around 200 MB of unused disk space is sitting idle there. Also use “ bootx64.efi ” file, which makes things a lot easier for Mac machine’s Startup Manager. 2) For Windows or Linux installation, check rEFInd installation document page. 3) Copy a desired.icns file from “ EFI - boot. REFInd is a boot manager which allows you to boot multiple operating systems from internal or external hard drives. REFInd automatically detects EFI bootloaders and shows a graphical interface allowing the user to select which operating system they want to start.
- Refind installiation is quite simple. It has a theme support and easy to configure with text-based. However, it's only recognize efi boots and also it will automatically include kernel which make the os menu duplicate. But, cleaning the menu from duplicating boot files are as easy as pressing delete buttons.
- Like rEFIt, rEFInd is a boot manager,meaning that it presents a menu of options to the user when the computer first starts up, as shown below. REFInd is not a boot loader,which is a program that loads an OS kernel and hands off control to it.
You installed Windows on an Intel Mac via Boot Camp, and want to usevirtualization in it. But there’s an issue — hardware virtualization extensionsare not available. Luckily, this can be worked around easily with the help ofrEFInd, an alternate boot manager.
Many software development workflows involve virtualization. WSL, Docker forWindows, and the Android Emulator are some examples of commonvirtualization-based tools. Then there are general virtualizationtools/hypervisors, such as VMware Workstation, Hyper-V or VirtualBox. All thesetools require hardware virtualization extensions (Intel VT-x, AMD-V) or atleast are very slow without them. Virtualization extensions are not enabled bydefault in the CPU, they must be enabled by something. On typical PCs, this isoften a firmware-level setting (that might be disabled by default), or it mightbe unconditionally enabled by the firmware. On a Mac, however, enabling VT-x isdone by macOS, as part of the boot process. This means that Windows running inBoot Camp will start without virtualization, unless you want to boot into macOSfirst and then reboot into Windows. That setup isn’t quite ergonomic (and whatif macOS refuses to shut down, as it often does for me?).
Instead, we’re going to userEFInd, a boot manager forEFI-based systems that can boot into various OSes and also handle otherparts of the boot process. But first, let’s prepare our system for this.
DISCLAIMER: Those steps may make your Mac fail to boot. I don’t take anyresponsibility whatsoever if that happens. Prepare for the worst — makebackups, perhaps have install media ready, plan some downtime.
Step 1. Install Windows in Boot Camp the usual way¶
The first thing you should do is install Windows 10 in Boot Camp, withthe help of the Boot Camp Assistant. The Assistant will take some timeto partition your drive and do other preparations (and show barelyinformative progress bars, but I ranted about that Apple design “feature”already).There are no special preparations for this, the standard process willwork. If you already have Windows installed, you can go to the nextstep.
Step 2. Ensure the setup is stable¶
We’ll be making changes to how the machine boots, and as such, it’sgood to have other things working correctly and in line with yourexpected configuration. Make sure that:
Both macOS and Windows boot correctly
You can change the OS you boot into by holding the Option key afterpressing Power (requires disabling the firmware password 1)
Disk encryption (FileVault, BitLocker) is enabled (if you want that, ofcourse) and fully configured (initial encryption is complete)
Windows setup (including Boot Camp drivers) is complete
The
OSXRESERVED
partition that the Boot Camp Assistant createdhas been deleted (that should have happened when booting into macOS for thefirst time after installing Windows — complete with a slowly movingprogress bar and no other information, as is usual for this OS — butif that didn’t happen, use Disk Utility in macOS or Recovery OS to dothat — pick your drive, click Partition and delete the partition,this will grow the macOS partition)System Integrity Protection is enabled (the procedure is a bit saferthat way)
Step 3. Create a partition for rEFInd¶
First, back up your data before making changes to your hard drivelayout. We’ll need to create a new partition for rEFInd to live on. Thisis the safest option — you could install it to the EFI System Partition (ESP),but macOS might want to put its own stuff there, and it’s safer not touse it.
The rEFInd partition doesn’t need to be large (50 MB will be enough); it must use the HFS+ (Mac OSExtended) file system. To create it, you have three options:
From macOS, by shrinking the macOS partition: open Disk Utility,choose your drive, select Partition, add a new partition, set itssize and file system (in that order!). This will take a few minutes(10-15, or possibly more), and you won’t be able to use your Macduring the resize.
From Recovery OS, by shrinking the macOS partition: same steps apply,but it might be a bit safer than doing it from within macOS.
From Windows, by shrinking the Windows partition: open DiskManagement (press the Windows key and type partition, or openComputer Management from Administrative Tools), right click yourWindows partition, select Shrink Volume. Enter the desired size andclick Shrink. Then, right click the unallocated space and create aNew Simple Volume. For now, choose FAT32 or exFAT; you’ll need toreformat it as HFS+ from within macOS later (Erase in Disk Utility). Thiswill take a few seconds — and even if you include the time to reboot, it’sfaster.
After you create the new partition and make sure it’s HFS+ (Mac OSExtended), you can proceed with the setup. Also, if you don’t want thepartition to be visible in the Finder, run the following command (insertthe correct volume path for your system):
Step 4. Configure and install rEFInd¶
To set ue rEFInd, you’ll need to boot into macOS. DownloadrEFInd from theauthor’s website — you want the file named A binary zip file. Extractthis archive anywhere on your system (~/Downloads
is fine).
First, you’ll need to change the configuration filerefind/refind.conf-sample
. Locate the setting namedenable_and_lock_vmx
, uncomment it (remove the #
at the startof the line), and set its value to true
. You can also make otherconfiguration changes — the default timeout
of 20 seconds islikely to be too much for your needs.
When your configuration file is ready, you can install rEFInd. You canuse the refind-install
tool, or perform a manual install (checkout the installationdocs for moredetails).
Before installing, you’ll need to get the device name of your rEFIndpartition. Open Disk Utility, select the partition from the left pane,and check the Device field (for example, disk9s9
— it will bedifferent on your system, depending on your partition layout).
Open a Terminal, cd
into the directory where rEFInd was extracted,and run the following command (replace disk9s9
with the devicename on your system):
This command will produce an error if you have SIP enabled — but thiserror is not important for us, the install will work without the changethat SIP prevented. 2
You can now shut down your Mac and use the Option key while starting upto choose the OS. You should see three options: Macintosh HD, EFI Boot,and Boot Camp. The EFI Boot option is rEFInd — pick that, boot intoWindows (Microsoft EFI boot), et voilà — Windows can now run virtualization software.
Refind Boot Manager Mac Download
There are a few more things that you can do now, depending on your OSpreferences.
You can make rEFInd the default boot loader. Hold Control on theApple boot device selection screen and click the Power icon under theEFI Boot drive (source for thetip).
You can use rEFInd to boot into macOS, although this might not workwith Big Sur according to the author (it seems to work for me, butYMMV). You can use the standard boot method for macOS (by defaultingto Macintosh HD, or by choosing it from the Power+Option picker) andrEFInd exclusively for Windows (and set your timeout to a low value).
You can modify rEFInd’s configuration — in this scenario, the configfile is
/Volumes/rEFInd/System/Library/CoreServices/refind.conf
.You can set a custom background image, for example (rEFInd’ssite can help you figure outwhat options are available and what you can set them to).
If the firmware password is important to you, you can restore it afterthe setup is done — this will mean using rEFInd to boot both Windows andmacOS, although I decided to remove the firmware password and bootinto macOS from the Power+Option boot menu.
Refind Boot Manager Macos
Refind Boot Manager For Mac
The failing operation is marking the rEFInd partition bootable in the Macsense, using the bless
command. However, the drive is consideredbootable as an EFI-compliant boot volume (it has *.efi
files in specificplaces), and this is the boot method we’re using here. SIP aside, thebless
utility is a bit buggy, and we can use rEFInd without a blessedpartition just fine.