What is multiboot?
A multiboot computer holds more than one operating system and lets the user pick one at startup. The most common form is dual boot, such as Windows plus a Linux distribution, or two versions of Windows on one machine for testing. Only one OS runs at a time, and it gets the hardware's full performance, which is the main difference from running a second OS in a virtual machine.
How it works
- Separate space: each OS needs its own partition or its own drive. Shrinking the Windows volume in Disk Management is the usual way to free space for a second OS.
- A boot manager: the program that shows the menu and loads the chosen OS. Windows uses Windows Boot Manager, configured in the Boot Configuration Data (BCD) store. Most Linux distributions use GRUB, which can detect Windows and add it to its menu.
- Firmware: on UEFI systems, each installed OS puts its boot loader on the shared EFI System Partition, and the firmware boot order decides which boot manager runs first. A one-time boot menu key at power-on, which varies by manufacturer, picks a different entry.
- Matching boot modes: install every OS in the same mode, UEFI with GPT or legacy BIOS with MBR, or the boot manager may not see the others.
Install order
Windows Setup does not add Linux to its boot menu and can take over as the default boot loader, so the usual advice is:
- Install Windows first, then Linux, so GRUB can find Windows and offer both.
- For two Windows versions, install the older one first. The newer Windows Boot Manager can start older versions, but not the other way around.
- Back up and create recovery media before resizing partitions.
Managing the boot menu
- Windows: System Properties > Advanced > Startup and Recovery sets the default OS and the menu timeout. The Boot tab in
msconfiglists Windows entries and can set the default.bcdeditedits the BCD store from an elevated prompt. - Linux: GRUB settings are in
/etc/default/grub. After editing, rebuild the menu withsudo update-grubon Debian and Ubuntu, orgrub2-mkconfigon Fedora and RHEL. - Intel Macs: Boot Camp Assistant installs Windows alongside macOS, and holding
Optionat startup chooses the disk. Apple silicon Macs do not support Boot Camp, so Windows runs there only in a virtual machine.
Common problems
- The Linux option vanished after a Windows update: Windows Boot Manager may now be first in the UEFI boot order. Fix the order in firmware settings or with the Linux tool
efibootmgr. - The clock is hours off after switching OS: Windows keeps local time in the hardware clock, while Linux usually keeps UTC. Set one of them to match the other.
- Linux cannot write to the Windows partition: Windows Fast Startup leaves the NTFS volume in a hibernated state. Turn off Fast Startup on multiboot machines.
- BitLocker asks for its recovery key: changes to the boot configuration can trigger it. Have the key on hand before making changes.
- A "grub rescue>" prompt after deleting the Linux partition: GRUB was still the boot loader. Restore Windows Boot Manager first, by moving it to the top of the UEFI boot order or repairing with
bootrecorbcdbootfrom the Windows Recovery Environment, and only then delete the Linux partition. - Secure Boot blocks a distribution: most major distributions boot with Secure Boot on; some others need it turned off.
Multiboot compared with virtualization
A hypervisor runs several operating systems at once, isolated from each other and easy to snapshot, at some cost in performance. Multiboot gives native speed and direct hardware access but only one OS at a time, plus the boot problems above. For testing, or for running an occasional Linux tool, a virtual machine or the Windows Subsystem for Linux is usually simpler.
Multiboot on the CompTIA A+ exam
Multiboot appears in Core 2 (220-1202) objective 1.2, installing and upgrading operating systems. Know that it needs separate partitions or drives and a boot manager, why Windows goes on before Linux, and the trade-off against virtualization. If a scenario says a user must choose between two operating systems at startup on one PC, think multiboot. If both must run at the same time, think virtual machine.