EasyBCD


EasyBCD is a program developed by NeoSmart Technologies to configure and tweak the Boot Configuration Data, a boot database first introduced in Windows Vista and used in all subsequent Windows releases. EasyBCD can be used to set up multi-boot environments for computers on which some versions of Windows, Linux, BSD and Mac OS X can be simultaneously installed; EasyBCD can also be used for adding entries to bootable tools and utilities, as well as modifying and controlling the behavior of the Windows boot menu. EasyBCD 2.3 introduced additional support for creating and managing entries for UEFI-based Windows entries in the boot menu. As of June 20, 2011 with the release of EasyBCD 2.1, it is no longer free for use in commercial environments which require the purchase of a paid license, however it remains free for home and non-profit use without limitations.

Supported operating systems

EasyBCD runs on Windows and modifies the Windows Boot Configuration Data to add support for other operating systems. Windows NT, Windows 2000, and Windows XP are supported by handing off the control of boot to either NTLDR or the EasyBCD-specific EasyLDR, which bypasses NTLDR and boots directly into the OS. MS-DOS, Windows 3.x and Windows 9x can be chainloaded via modified versions of IO.sys and the Windows 9x boot sector. Linux and BSD are loaded either by handing off control of the boot process to GRUB or LILO or by using EasyBCD's own NeoGrub module. Mac OS X is loaded via the Darwin bootloader. Other operating systems are also supported by means of chainloading their specific loader environments.

Features

Bootloader Configuration

EasyBCD has a number of bootloader-related features that can be used to repair and
configure the bootloader.
From the "Manage Bootloader" section of EasyBCD, it is possible to switch between the bootmgr bootloader and the NTLDR bootloader in the MBR from within Windows by simply clicking a button. EasyBCD also offers a feature to back up and restore the BCD configuration files for recovery and testing purposes.
In the "Diagnostics Center," it is possible to reset a corrupt BCD storage and automatically create the necessary entries for the current operating system, as well as search for and replace missing/corrupt boot files. This latter feature can be taken advantage of to install the Windows Vista BCD bootloader.
EasyBCD can be used to change the boot drive, rename or change the order of any entries in the bootloader, and modify existing entries to point to a different drive.
Newer versions of EasyBCD also support creating bootable USB disks, by deploying BOOTMGR and the BCD onto a removable disk and performing the necessary actions to make the drive bootable, after which it can be loaded into EasyBCD to add and remove the various supported entry types in order to create bootable repair USB sticks.
EasyBCD also supports changing the boot partition/drive that PC boots from, changing the default boot entry, re-ordering menu entries, and modifying the timeout behavior of the boot menu.

Windows

EasyBCD supports a number of different Windows entries, and can be used to install and configure the following:
Depending on the version of Windows being added in EasyBCD, certain other options may be available. These include enabling support for unsigned drivers on 64-bit Windows installations, booting into the various flavors of safe mode, limiting Windows to a certain amount/number of memory or CPU cores, verbose boot logging, and enabling/disabling of both PAE and DEP/NoExecute.
As of version 2.0, EasyBCD uses a new method for booting into Windows NT/2000/XP that does not use NTLDR in order to avoid a two-level boot menu. Instead, EasyBCD uses a boot-time helper developed by NeoSmart Technologies called EasyLDR, which replaces NTLDR and bypasses boot.ini entirely, directly loading the operating system in question without showing the user a second selection menu.

Windows PE

are supported under a separate module in EasyBCD. EasyBCD can boot into two different Windows PE systems:
EasyBCD supports booting into WinPE 2.0+ WIM images stored on any local partition by providing the path to the WIM file. It automatically re-configures the BCD to add support for the WIM format. It can also boot into a Windows PE filesystem extracted to the root of a mounted drive letter.

Linux

EasyBCD can boot into Linux by one of two means:
The traditional chainloading method creates an image of the GRUB/LILO bootsector on the local disk and loads this image during boot-time in order to chainload the second bootloader which should already be configured to boot into Linux or BSD. EasyBCD has profiles for and officially supports the chainloading of GRUB, GRUB2, LILO, eLILO, and Wubi.
EasyBCD also ships with NeoGrub, a customized build of Grub for Dos, which can be configured by editing C:\NST\menu.lst with the standard Legacy GRUB syntax for directly booting into the needed Linux or BSD partitions, or chainloading another bootloader to load the OS in question.

BSD

As of version 2.1.1, EasyBCD contains a module specifically tailored for booting into BSD-based operating systems which was developed in cooperation with the PC-BSD team. This module works in tandem with the BTX bootloader to support booting into BSD systems in both BIOS and UEFI environments, and the PC-BSD setup wizard has been developed with this capability and module of EasyBCD in mind.

Mac OS X

EasyBCD can chainload the Mac OS X Darwin bootloader in order to boot into OS X on another partition or physical disk. It doesn't require that Darwin be installed on the bootsector of the OS X partition. This facilitates multi-boot installation in OSX86 setups, and can currently be used with either MBR or EFI configurations.

Removable devices

In conjunction with EasyBCD's ability to create bootable USB drives, it also has the option of creating portable entries that can be used on the normal PC bootloader or, more practically, on bootable external media.
EasyBCD can create entries that boot into hard disk images, ISO images, WinPE 2.0+ WIM files, floppy disk images, and BIOS extenders.