How to Dual Boot Windows 10 and Linux
Dual booting Windows 10 and Linux gives you the best of both worlds—Windows for gaming and general-purpose applications, and Linux for development, system administration, or open-source tooling. However, managing two operating systems on a single machine is a delicate operation that requires precision and planning.
This advanced guide walks you through the steps of setting up a clean and efficient dual-boot system using UEFI, GPT, and modern Linux distributions such as Ubuntu, Fedora, or Arch Linux.
Step 1: Prepare the Disk for Dual Booting
Option A: Windows Already Installed
Shrink the Windows partition:
- Go to Disk Management → Right-click the main partition (usually C:) → Shrink Volume.
- Leave at least 50 GB of unallocated space for Linux.
Disable Fast Startup & BitLocker:
- Control Panel → Power Options → Choose what power buttons do → Turn off Fast Startup.
- Ensure BitLocker is turned off on system drives (Control Panel > BitLocker).
Check EFI Partition:
Ensure you have an EFI System Partition (~100–500 MB, FAT32).
You can verify this using:
Step 2: Create Linux Installation Media
Download your preferred Linux distro (e.g., Ubuntu LTS, Fedora Workstation).
Use Rufus or dd (on Linux/macOS) to create a bootable USB.
Boot from the USB:
- Enter UEFI/BIOS settings → Disable Secure Boot (optional for some distros).
- Set the USB drive as first boot device.
Step 3: Install Linux Alongside Windows
Boot into Live Linux environment and start the installer.
Manual partitioning:
Use Something Else (Ubuntu) or Custom Partitioning option.
Identify the unallocated space.
Create the following partitions:
/ (root): ext4, 30–60 GB
[Optional] /home: ext4, separate user data
[Optional] swap: 2–4 GB or based on RAM if you want hibernation
Set EFI partition:
Do not format the EFI System Partition (ESP).
Mount it as /boot/efi.
GRUB Bootloader:
Choose to install GRUB on the EFI partition (not MBR).
Typically ESP is /dev/sda1 or /dev/nvme0n1p1.
Finish installation and reboot.
Step 4: Configure UEFI Boot Order
After installation, the system may still boot directly into Windows. Here’s how to ensure GRUB appears:
Access UEFI firmware:
Hit F2, DEL, ESC, or another key (depends on manufacturer).
Change Boot Order:
Set “ubuntu” or “Linux Boot Manager” above “Windows Boot Manager.”
Using Windows Command Line:
Or install and use efibootmgr on Linux to reorder boot entries:
Optional Post-Install Steps
1. GRUB Customization
Use tools like grub-customizer or manually edit /etc/default/grub:
2. Update GRUB after any config changes:
3. Re-enable Secure Boot (Optional)
If your Linux distribution supports signed bootloaders (e.g., Ubuntu), you may re-enable Secure Boot after installation.
Conclusion
Dual-booting Windows 10 and Linux is a powerful setup, offering flexibility and freedom. While the process may seem intricate, especially with UEFI and GPT partitioning, a methodical approach ensures a clean, recoverable installation. Always back up your data, double-check partition targets, and keep a live USB handy for recovery or GRUB repair.
With proper setup, you’ll enjoy a robust dual-boot system ready for development, gaming, and everything in between.