Your cart is currently empty!
A Beginner’s Guide to Installing Arch Linux on UEFI Machines
Arch Linux is famous for its minimalism, speed, and control — but it’s equally famous for its challenging installation process. If you’ve ever wanted to install Arch on a modern UEFI-based system but didn’t know where to start, this guide will walk you through the essentials.
We’ll cover the basics, keep it beginner-friendly, and focus on UEFI systems (which most computers made after 2012 use).
What You’ll Need
Before diving in, make sure you have:
- A UEFI-capable PC – You can check in your BIOS settings if it supports UEFI.
- A USB stick (at least 2 GB) – For the Arch ISO.
- Stable internet connection – You’ll need it during installation.
- Basic familiarity with the command line – We’ll be typing commands, but I’ll explain what they do.
Step 1: Download and Create the Installation Media
- Go to the Arch Linux Downloads page.
- Download the latest ISO.
- Use a tool like Rufus (Windows), balenaEtcher (Linux/macOS), or the
dd
command (Linux) to write the ISO to your USB stick. - Make sure you select GPT partition scheme for UEFI in Rufus.
Step 2: Boot Into the Live Environment
- Plug in the USB stick and reboot your computer.
- Enter your BIOS/UEFI settings (often by pressing F2, DEL, or ESC during boot).
- Set USB as the first boot device.
- Boot from the Arch USB. You should see the Arch boot menu — choose Boot Arch Linux (x86_64).
Step 3: Verify UEFI Mode
Before installing, confirm you’re in UEFI mode:
ls /sys/firmware/efi/efivars
If the directory exists and isn’t empty, you’re in UEFI mode. If not, restart and check your BIOS boot settings.
Step 4: Connect to the Internet
For wired connections, you’re probably online already. For Wi-Fi:
iwctl
Then:
device list
station <device> scan
station <device> get-networks
station <device> connect <SSID>
exit
Test the connection:
ping archlinux.org
Step 5: Partition the Disk
We’ll create a simple layout:
- EFI System Partition (ESP) – 512 MB, FAT32
- Root partition – Rest of the space, ext4
Run:
fdisk /dev/sdX
Replace sdX
with your drive name (check with lsblk
).
Inside fdisk
:
- Create a new GPT table:
g
- New EFI partition:
n
, size+512M
, type1
(EFI System) - New root partition:
n
(use remaining space) - Write changes:
w
Step 6: Format the Partitions
mkfs.fat -F32 /dev/sdX1
mkfs.ext4 /dev/sdX2
Step 7: Mount the Partitions
mount /dev/sdX2 /mnt
mkdir /mnt/boot
mount /dev/sdX1 /mnt/boot
Step 8: Install the Base System
pacstrap /mnt base linux linux-firmware vim
Step 9: Generate fstab
genfstab -U /mnt >> /mnt/etc/fstab
Step 10: Chroot Into the New System
arch-chroot /mnt
Step 11: Set Timezone and Locale
ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
hwclock --systohc
Edit locale:
vim /etc/locale.gen
Uncomment en_US.UTF-8 UTF-8
(or your preferred locale), then:
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
Step 12: Set Hostname
echo "myarch" > /etc/hostname
Step 13: Set Root Password
passwd
Step 14: Install Bootloader for UEFI
We’ll use GRUB:
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
Step 15: Exit and Reboot
exit
umount -R /mnt
reboot
Remove the USB when prompted.
Post-Installation Tips
- Install a network manager:
pacman -S networkmanager
systemctl enable NetworkManager
- Create a normal user:
useradd -m -G wheel username
passwd username
- Install
sudo
and enable wheel group in/etc/sudoers
.
Next Steps: Installing a Desktop Environment
Now that you have a working base Arch installation, you’ll probably want a desktop environment. If you’re a fan of GNOME, follow this guide:
How to Install GNOME Desktop on Arch Linux
Final Thoughts
Installing Arch Linux on UEFI might seem intimidating at first, but once you break it down into clear steps, it’s just a matter of patience and attention to detail. The real power of Arch comes after installation, when you customize it exactly how you want.
With your base system set up and a desktop environment installed, you’ll have a fast, clean, and completely personalized Linux experience.
Tech enthusiast and content creator passionate about making technology simple for everyone. I share practical tips, guides, and reviews on the latest in computers, software, and gadgets. Let’s explore the digital world together!