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

Apr 30, 2025 - 17:02
 0
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 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).