EasyBCD and UEFI

With the release of Windows 8 and Windows 10, many new computers are shipping with something known as the UEFI firmware and boot manager in place of the traditional BIOS and MBR approach to starting up your PC. The changes are not small and have had a massive effect on the process of dual-booting on a Windows machine.

Newer computers are shipping with a BIOS replacement called UEFI – short for Unified Extensible Firmware Interface – that completely changes the way operating systems interact with and are loaded from the hardware in your PC. It is not fundamentally incompatible with dual-booting, but the way that Microsoft and PC manufacturers have implemented UEFI, it makes it a lot harder to do so.

Upon starting EasyBCD on a machine that is currently booting in UEFI mode, the following dialog will be seen:

EFI Bootloader Detected!

EasyBCD has detected that your machine is currently booting in EFI mode. Due to limitations set by Microsoft, many of EasyBCD’s multi-booting features cannot be used in EFI mode and have been disabled.

Press ‘OK’ to continue or ‘Help’ to read more about these limitations and possible workarounds.

What this means

If your Windows PC is booting in EFI mode, Microsoft has blocked the loading of legacy or non-Windows operating systems from the BCD menu. This means that you can no longer use EasyBCD to add Windows 9x, XP, or Server 2003 entries to the BCD bootloader menu. You also cannot add DOS, Linux, BSD, or Mac entries. You can add multiple Windows Vista, Windows 7, Windows 8, and Windows 10 entries; and you can also boot into BCD-based portable media, such as WinPE 2.0+ images.

EasyBCD is 100% UEFI-ready. In UEFI mode, much of EasyBCD’s functionality will be disabled for the safety of your PC. It abides by the restrictions Microsoft has placed on the bootloader that will block any attempts to load non-Microsoft-signed kernels (including chainloaders) from the top-level BCD menu, and it will create 100%-compliant UEFI entries other installed Windows operating systems on your PC. These limitations are not short comings of EasyBCD nor can they be lightly bypassed, they have been put in place by Microsoft.

Option 1: Disable UEFI and Secure Boot

Most PCs and laptops currently shipping with and using the UEFI firmware and bootloader can be configured to disable UEFI entirely and instead revert to “legacy” MBR boot mode. Two separate steps are often required to fully achieve this; we have documented both with visual guides and sample images taken from the more-common UEFI configuration pages:

These steps do not turn off UEFI (which isn’t possible, since that’s what your motherboard is running), but they do enable you to boot into Windows the traditional way (via the MBR). However, your Windows installation is already in UEFI/GPT mode, and UEFI installations of Windows cannot be booted via the legacy MBR approach! You will need to either format (making sure to completely reinitialize the disk to get rid of the GPT) and reinstall Windows, or else use a utility like Easy Recovery Essentials which can convert your existing installation to be bootable in both UEFI/GPT and BIOS/MBR mode in-place, without losing any data. Performing a single “Automated Repair” run in EasyRE is sufficient to make your Windows installation bootable in legacy/MBR mode as well as EFI/GPT mode. You may need to give legacy/bios mode loading priority over UEFI in your BIOS setup/configuration (“load legacy first”).

Option 2: Use a virtual machine

With improvements to virtualization technologies in recent years, it’s no longer hard or painful to run another operating system (or several, for that matter) in a virtual machine instead of dual-booting natively. Using any of the popular, free virtualization software like Windows Virtual PC, VirtualBox, or VMware Server it is possible to install Linux, older versions of Windows, DOS, and other operating systems in a so-called “virtual machine” which looks and acts like another PC but runs in a window on your desktop – no rebooting required – letting you run both operating systems at once. This approach is fully compatible (and independent from) the MBR/UEFI issue, and should work fine on most modern machines. On older machines or machines with restricted amounts of RAM (under 4 or 8 GiB) available, this can be a taxing workload for your PC, however.

Option 3: Use GRUB2 EFI as your main boot manager

EasyBCD controls the Windows boot menu, and has traditionally been used as the primary boot manager. With EasyBCD, it is possible to add entries for Linux and older versions of Windows to the top-level BCD menu seen when your machine first boots. Since the Windows boot manager running in UEFI mode does not support the loading of legacy and non-Microsoft operating systems, another option is possible.

When installing Linux or any other 3rd party OS that ships with its own bootloader, instead of choosing to install GRUB to the bootsector as is traditionally done when opting to use EasyBCD to control your boot menu, choose to install GRUB to the MBR (or disk, in this case) and make it the main bootloader for your PC. You can add the Windows boot menu to the GRUB2 EFI boot menu – in this case, you’ll see GRUB’s boot menu when your PC starts, and from there you can choose Windows. You can still use EasyBCD to control the Windows boot menu and set up multi-boots and re-configure Vista+ entries in the BCD boot menu, but with the GRUB2 EFI menu loading first, you can use that to boot into Linux and to chainload NTLDR to boot into Windows 9x.