Dual-Boot Arch Linux (UEFI) with Windows 10
1. Pre-Installation Preparation Before touching partitions, back up any important files from your Windows system. Verify that Windows is installed in UEFI mode: in Windows press Win+R, run msinfo32, and ensure BIOS Mode is “UEFI” (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). Also confirm Windows uses GPT, not MBR, in Disk Management. Next, disable “Fast Startup” in Windows (via Control Panel → Power Options) because it hibernates the disk and can block Linux from mounting it (Is it necessary to disable Fast Boot in Windows to dual boot with linux(EFISTUB)? - Unix & Linux Stack Exchange). In your PC’s UEFI/BIOS settings, disable Secure Boot if possible (this avoids bootloader signature issues) and Fast Boot (if present, to ensure the USB can boot). Download the Arch Linux ISO from the official site and create a bootable USB. For example, use a tool like Rufus on Windows: select the ISO, set the partition scheme to GPT and file system to FAT32, and flash it (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). This makes the USB UEFI-bootable. When done, reboot and enter your firmware’s boot menu (often by pressing a key like F12, F10, or Esc during startup) and choose the USB under UEFI devices (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). 2. Booting Arch Linux in UEFI Mode Boot the USB in UEFI mode. You should land at an Arch Linux prompt (typically as the root user, no password). If needed, set your keyboard layout (e.g. loadkeys us for US layout) and verify network connectivity next. 3. Internet Connection (Wi-Fi) If you have a wired connection, it usually connects automatically via DHCP. Test it with ping -c 3 archlinux.org. For Wi-Fi, run: rfkill unblock wifi iw dev # identify your wireless interface name (e.g. wlan0) wifi-menu wlan0 # (or your interface name) to select and connect to a network After connecting, verify with ping -c 3 archlinux.org. A working connection is required for package installation (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). 4. Disk Partitioning WARNING: Be careful not to delete your Windows partitions. You may have already shrunk the Windows partition from Windows Disk Management to make free space. If not, reboot into Windows, open Disk Management (diskmgmt.msc), right-click the Windows (C:) partition, and choose Shrink Volume to free up at least ~20–50 GB (20000–50000 MB) for Arch (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). Back in Arch’s live environment, list disks with fdisk -l to identify your drive (e.g. /dev/sda). Use cfdisk (or fdisk/gdisk) to partition. Select your disk (e.g. /dev/sda) and a GPT label: cfdisk /dev/sda In the cfdisk menu, create new partitions in the free space: EFI System Partition (ESP): If Windows is already in UEFI mode, an EFI partition (around 100–500 MB, FAT32) should exist (often /dev/sda1). We will reuse that for the bootloader. If not present, create a new small (e.g. 500 MB) FAT32 partition and set its type to “EFI System” (How to Install Arch Linux: A Beginner’s Practical Guide). Swap Partition: Create a Linux swap partition. For example, if you have 8 GB RAM, make 8–12 GB here. After selecting “New”, accept the defaults to start at free space and enter the size (e.g. 12G), then set its type to “Linux swap” (How to Install Arch Linux: A Beginner’s Practical Guide). Root Partition: Use the remaining space to create an ext4 root partition. Again select “New”, accept the remaining free space, and set the type to “Linux filesystem” (ID 8300) (How to Install Arch Linux: A Beginner’s Practical Guide). Write the changes (“Write” in cfdisk) and confirm. Then quit cfdisk (How to Install Arch Linux: A Beginner’s Practical Guide). 5. Format and Mount Partitions Format each partition to its filesystem: mkfs.fat -F32 /dev/sda1 # Format EFI partition as FAT32 (if newly created; skip if reusing Windows EFI) mkswap /dev/sda2 # Format swap partition swapon /dev/sda2 # Enable swap mkfs.ext4 /dev/sda3 # Format root partition as ext4 (Adjust /dev/sdXN numbers to match your EFI, swap, and root partitions.) Format and activate swap as shown (How to Install Arch Linux: A Beginner’s Practical Guide); format root as ext4 (How to Install Arch Linux: A Beginner’s Practical Guide). Next, mount the new root partition and EFI partition (bootloader space). For example: mount /dev/sda3 /mnt # Mount the root partition mkdir -p /mnt/boot/efi # Create a mount point for EFI mount /dev/sda1 /mnt/boot/efi # Mount the EFI (ESP) here (This assumes /dev/sda1 is the EFI; use the correct device.) These commands are analogous to those shown in the guide (How to Install Arch Linux: A Beginner’s Practical Guide). Verify with lsblk that /mnt is your r

1. Pre-Installation Preparation
Before touching partitions, back up any important files from your Windows system. Verify that Windows is installed in UEFI mode: in Windows press Win+R, run msinfo32
, and ensure BIOS Mode is “UEFI” (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). Also confirm Windows uses GPT, not MBR, in Disk Management. Next, disable “Fast Startup” in Windows (via Control Panel → Power Options) because it hibernates the disk and can block Linux from mounting it (Is it necessary to disable Fast Boot in Windows to dual boot with linux(EFISTUB)? - Unix & Linux Stack Exchange). In your PC’s UEFI/BIOS settings, disable Secure Boot if possible (this avoids bootloader signature issues) and Fast Boot (if present, to ensure the USB can boot).
Download the Arch Linux ISO from the official site and create a bootable USB. For example, use a tool like Rufus on Windows: select the ISO, set the partition scheme to GPT and file system to FAT32, and flash it (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub). This makes the USB UEFI-bootable. When done, reboot and enter your firmware’s boot menu (often by pressing a key like F12, F10, or Esc during startup) and choose the USB under UEFI devices (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub).
2. Booting Arch Linux in UEFI Mode
Boot the USB in UEFI mode. You should land at an Arch Linux prompt (typically as the root
user, no password). If needed, set your keyboard layout (e.g. loadkeys us
for US layout) and verify network connectivity next.
3. Internet Connection (Wi-Fi)
If you have a wired connection, it usually connects automatically via DHCP. Test it with ping -c 3 archlinux.org
. For Wi-Fi, run:
rfkill unblock wifi
iw dev # identify your wireless interface name (e.g. wlan0)
wifi-menu wlan0 # (or your interface name) to select and connect to a network
After connecting, verify with ping -c 3 archlinux.org
. A working connection is required for package installation (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub).
4. Disk Partitioning
WARNING: Be careful not to delete your Windows partitions. You may have already shrunk the Windows partition from Windows Disk Management to make free space. If not, reboot into Windows, open Disk Management (diskmgmt.msc
), right-click the Windows (C:) partition, and choose Shrink Volume to free up at least ~20–50 GB (20000–50000 MB) for Arch (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub).
Back in Arch’s live environment, list disks with fdisk -l
to identify your drive (e.g. /dev/sda
). Use cfdisk
(or fdisk
/gdisk
) to partition. Select your disk (e.g. /dev/sda
) and a GPT label:
cfdisk /dev/sda
In the cfdisk menu, create new partitions in the free space:
-
EFI System Partition (ESP): If Windows is already in UEFI mode, an EFI partition (around 100–500 MB, FAT32) should exist (often
/dev/sda1
). We will reuse that for the bootloader. If not present, create a new small (e.g. 500 MB) FAT32 partition and set its type to “EFI System” (How to Install Arch Linux: A Beginner’s Practical Guide). -
Swap Partition: Create a Linux swap partition. For example, if you have 8 GB RAM, make 8–12 GB here. After selecting “New”, accept the defaults to start at free space and enter the size (e.g.
12G
), then set its type to “Linux swap” (How to Install Arch Linux: A Beginner’s Practical Guide). - Root Partition: Use the remaining space to create an ext4 root partition. Again select “New”, accept the remaining free space, and set the type to “Linux filesystem” (ID 8300) (How to Install Arch Linux: A Beginner’s Practical Guide).
Write the changes (“Write” in cfdisk) and confirm. Then quit cfdisk (How to Install Arch Linux: A Beginner’s Practical Guide).
5. Format and Mount Partitions
Format each partition to its filesystem:
mkfs.fat -F32 /dev/sda1 # Format EFI partition as FAT32 (if newly created; skip if reusing Windows EFI)
mkswap /dev/sda2 # Format swap partition
swapon /dev/sda2 # Enable swap
mkfs.ext4 /dev/sda3 # Format root partition as ext4
(Adjust /dev/sdXN
numbers to match your EFI, swap, and root partitions.) Format and activate swap as shown (How to Install Arch Linux: A Beginner’s Practical Guide); format root as ext4 (How to Install Arch Linux: A Beginner’s Practical Guide).
Next, mount the new root partition and EFI partition (bootloader space). For example:
mount /dev/sda3 /mnt # Mount the root partition
mkdir -p /mnt/boot/efi # Create a mount point for EFI
mount /dev/sda1 /mnt/boot/efi # Mount the EFI (ESP) here
(This assumes /dev/sda1
is the EFI; use the correct device.) These commands are analogous to those shown in the guide (How to Install Arch Linux: A Beginner’s Practical Guide). Verify with lsblk
that /mnt
is your root and /mnt/boot/efi
is your EFI.
6. Install the Base System
Install the core Arch system packages using pacstrap
:
pacstrap /mnt base linux linux-firmware
This installs the base filesystem, the Linux kernel, and firmware for common devices (Comprehensive Arch Linux Installation Guide | Liquid Web). You can also add packages like base-devel
or a text editor here (e.g. nano
) as needed.
7. Configure the New System
Generate an fstab file so the system knows where to mount partitions on boot:
genfstab -U /mnt >> /mnt/etc/fstab
Review it with cat /mnt/etc/fstab
to ensure it lists your root and EFI partitions correctly (Comprehensive Arch Linux Installation Guide | Liquid Web).
Now enter the new system environment with arch-chroot
:
arch-chroot /mnt
You are now effectively “root” in your installed system. All following commands apply inside the new Arch system.
Timezone and Clock
Set your timezone, for example for New York:
ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
hwclock --systohc
This links the appropriate zoneinfo file and generates /etc/adjtime
(Comprehensive Arch Linux Installation Guide | Liquid Web) (Comprehensive Arch Linux Installation Guide | Liquid Web). Replace the path with your region/city.
Locale
Edit /etc/locale.gen
, uncomment your locale (e.g. en_US.UTF-8 UTF-8
), then run:
locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf
These commands (and uncommenting the locale) are shown in the guide (Comprehensive Arch Linux Installation Guide | Liquid Web) (Comprehensive Arch Linux Installation Guide | Liquid Web). This sets the system language.
Hostname and Hosts
Set a hostname by creating /etc/hostname
with your chosen name. For example:
echo "archpc" > /etc/hostname
Then edit /etc/hosts
and add lines:
127.0.0.1 localhost
::1 localhost
127.0.1.1 archpc.localdomain archpc
Replace archpc
with your hostname as shown (Comprehensive Arch Linux Installation Guide | Liquid Web).
Root Password and Initramfs
Set the root password:
passwd
Enter a secure password when prompted (Comprehensive Arch Linux Installation Guide | Liquid Web). Then rebuild the initial ramdisk:
mkinitcpio -P
This ensures the boot image is up-to-date (most tutorials include this step).
Create a Regular User (optional but recommended)
Create a normal user for daily use and add it to the “wheel” group (for sudo). For example:
useradd -m -G wheel -s /bin/bash username
passwd username
Give that user a password. Then install and enable sudo by editing /etc/sudoers
with EDITOR=nano visudo
and uncommenting the line %wheel ALL=(ALL) ALL
.
8. Install the Bootloader (GRUB)
Install GRUB with UEFI support so you can boot Arch (and Windows). First, install the packages:
pacman -S grub efibootmgr os-prober
Here, os-prober
helps detect Windows. Now install GRUB to the EFI directory and generate its config:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
These commands create the GRUB UEFI entry (How to Install & Configure Arch Linux on UEFI Systems) (How to Install & Configure Arch Linux on UEFI Systems). If everything works, /boot/grub/grub.cfg
will be generated and should include menu entries for both Arch and Windows. (If Windows is not listed, ensure os-prober
was installed and re-run grub-mkconfig
.)
9. Install KDE Plasma and SDDM
If you want a graphical desktop, install KDE Plasma and its apps. For a full set:
pacman -S plasma-meta kde-applications-meta
This pulls in the KDE desktop environment and standard KDE apps (How to Install Arch Linux: A Beginner’s Practical Guide). You may also install a graphical display server (xorg
) if not already installed.
Enable the SDDM display/login manager (default for KDE) and networking (using NetworkManager, since you used NetworkManager earlier):
systemctl enable sddm
systemctl enable NetworkManager
This ensures KDE’s login screen and network service start at boot (How to Install Arch Linux: A Beginner’s Practical Guide). (You could also use dhcpcd
or another network service if you prefer.)
10. Finalize and Reboot
Exit the chroot, unmount partitions, and reboot:
exit
umount -R /mnt
reboot
Remove the USB drive when the system shuts down. On reboot, you should see the GRUB menu offering Arch Linux and Windows. Select Arch to boot into your new system with KDE. Log in as your new user or root (depending on setup) and enjoy Arch Linux! (How to Install Arch Linux: A Beginner’s Practical Guide).
Common Pitfalls: Be careful not to overwrite the Windows partitions. Always confirm device names (/dev/sdX
) before formatting. If GRUB doesn’t show Windows, ensure os-prober
is installed and rerun grub-mkconfig
. Disabling Fast Startup in Windows is essential; otherwise Linux will refuse to mount the Windows drive (Is it necessary to disable Fast Boot in Windows to dual boot with linux(EFISTUB)? - Unix & Linux Stack Exchange). Ensure your firmware is booting in UEFI mode (not legacy) for both OSes, or the dual-boot will fail.
Sources: Steps adapted from the official Arch Wiki and community guides (Comprehensive Arch Linux Installation Guide | Liquid Web) (How to Install Arch Linux: A Beginner’s Practical Guide) (How to Install Arch Linux: A Beginner’s Practical Guide) (How to Install & Configure Arch Linux on UEFI Systems) (How to Install Arch Linux: A Beginner’s Practical Guide), including Windows preparation notes (Is it necessary to disable Fast Boot in Windows to dual boot with linux(EFISTUB)? - Unix & Linux Stack Exchange) (Installing And Setting Up Arch Linux to Dual Boot Alongside Window 10 · GitHub).