Ultimate Guide to Installing Arch Linux (2025 Edition)

Everything you need to know to install Arch Linux successfully in 2025.

Introduction

Arch Linux remains one of the most respected distributions among Linux enthusiasts for good reason. Its “keep it simple” philosophy, rolling release model, and minimalist approach give users complete control over their system. While Arch’s installation process has evolved over the years, it still requires more manual intervention than most distributions—and that’s by design.

This guide covers the complete installation process for Arch Linux in 2025, including the latest tools and best practices. Whether you’re a first-time Arch user or returning for a fresh installation, we’ll walk through every step to ensure success.

Why Choose Arch Linux in 2025?

Before diving into installation, let’s consider why Arch might be the right choice for you:

  • Complete customization: Build your system from the ground up with only what you need
  • Rolling release model: Get the latest software updates without major version upgrades
  • Exceptional documentation: The Arch Wiki remains the gold standard for Linux documentation
  • Active community: A knowledgeable and helpful community in forums and IRC/Discord
  • Pacman package manager: Fast, powerful, and straightforward package management
  • AUR (Arch User Repository): Access to thousands of community-maintained packages

The installation process itself serves as an excellent learning opportunity about how Linux systems work underneath the hood.

Prerequisites

Before starting, ensure you have:

  • A computer with at least 2GB RAM (4GB+ recommended for desktop environments)
  • At least 20GB free disk space (more recommended for practical use)
  • Internet connection (wired is easier for installation)
  • USB drive (4GB+) for the installation media
  • Basic familiarity with command line operations
  • 1-2 hours of uninterrupted time
  • Patience and willingness to learn

Preparation

1. Download the ISO

Download the latest Arch Linux ISO from the official download page. As of 2025, the ISO includes several quality-of-life improvements like the archinstall script, though we’ll cover both guided and manual installation methods.

2. Create a Bootable USB Drive

On Linux:

# Replace /dev/sdX with your USB device (be careful to get this right!)
sudo dd bs=4M if=/path/to/archlinux.iso of=/dev/sdX status=progress oflag=sync

On Windows:

Use Rufus, Etcher, or Ventoy to write the ISO to your USB drive.

On macOS:

# Replace diskN with your USB device
sudo dd if=/path/to/archlinux.iso of=/dev/diskN bs=4m

3. Boot from USB

  1. Insert your USB drive and restart your computer
  2. Enter your BIOS/UEFI settings (usually by pressing F2, F12, Del, or Esc during boot)
  3. Set your USB drive as the first boot device
  4. Save changes and exit

Quick Installation with Archinstall (The Easy Way)

Since 2021, Arch Linux has included the archinstall script which automates much of the installation process. In 2025, this tool has matured significantly and offers an excellent way to get started.

  1. Boot from the Arch ISO and select “Arch Linux install medium”
  2. Once at the prompt, verify your internet connection:
    ping -c 3 archlinux.org
    
  3. Run the guided installer:
    archinstall
    
  4. Follow the interactive prompts to configure your installation:
    • Select your language and location
    • Choose a disk layout (the automatic partitioning works well for most users)
    • Select a desktop environment (or none for a minimal installation)
    • Set your username, password, and hostname
    • Choose additional packages to install
  5. Review your selections and proceed with the installation
  6. When finished, reboot into your new system

While archinstall is convenient, many Arch users prefer the manual installation for complete control and learning purposes. Let’s cover that next.

Manual Installation (The Arch Way)

1. Boot into the Live Environment

Once booted from the USB, you’ll see the Arch Linux boot menu. Select “Arch Linux install medium” and press Enter.

2. Set Console Keyboard Layout (if needed)

The default layout is US. If you use a different keyboard layout:

# List available layouts
ls /usr/share/kbd/keymaps/**/*.map.gz

# Load your preferred layout (e.g., UK)
loadkeys uk

3. Verify Boot Mode

Check if your system uses UEFI or BIOS:

ls /sys/firmware/efi/efivars

If the command shows files, you’re in UEFI mode. If it shows an error, you’re in BIOS mode.

4. Connect to the Internet

For wired connections, the live environment should connect automatically. Verify with:

ping -c 3 archlinux.org

For Wi-Fi, use iwctl:

iwctl
device list
station wlan0 scan
station wlan0 get-networks
station wlan0 connect SSID
# Enter password when prompted
exit

5. Update System Clock

timedatectl set-ntp true

6. Partition the Disks

First, identify your target disk:

lsblk

Use fdisk or gdisk (for GPT) or cfdisk (easier TUI):

cfdisk /dev/nvme0n1  # Replace with your disk

For UEFI systems:

  1. Create a 512 MB EFI System Partition (ESP)
  2. Create a swap partition (optional, recommended size = RAM size up to 16GB)
  3. Create a root partition with the remaining space (you can also create separate home partition)

For BIOS systems:

  1. Create a 1MB BIOS boot partition (type 4)
  2. Create a swap partition
  3. Create a root partition

7. Format the Partitions

Format the EFI partition (UEFI only):

mkfs.fat -F32 /dev/nvme0n1p1

Format swap partition (if created):

mkswap /dev/nvme0n1p2
swapon /dev/nvme0n1p2

Format root partition:

mkfs.ext4 /dev/nvme0n1p3

Format home partition (if separate):

mkfs.ext4 /dev/nvme0n1p4

8. Mount the File Systems

mount /dev/nvme0n1p3 /mnt

Create and mount the EFI directory (UEFI only):

mkdir -p /mnt/boot/efi
mount /dev/nvme0n1p1 /mnt/boot/efi

Mount home partition (if separate):

mkdir /mnt/home
mount /dev/nvme0n1p4 /mnt/home

9. Install Base System

The pacstrap tool installs the base system:

pacstrap /mnt base linux linux-firmware intel-ucode # or amd-ucode

Also install essential tools:

pacstrap /mnt base-devel vim nano git networkmanager

10. Generate Fstab

genfstab -U /mnt >> /mnt/etc/fstab

11. Chroot into the New System

arch-chroot /mnt

12. Set Time Zone and Localization

ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
hwclock --systohc

Edit /etc/locale.gen and uncomment your locale (e.g., en_US.UTF-8):

nano /etc/locale.gen

Generate locales:

locale-gen

Create /etc/locale.conf:

echo "LANG=en_US.UTF-8" > /etc/locale.conf

Set keyboard layout (if different):

echo "KEYMAP=uk" > /etc/vconsole.conf

13. Network Configuration

Set hostname:

echo "myhostname" > /etc/hostname

Edit hosts file:

nano /etc/hosts

Add these lines:

127.0.0.1    localhost
::1          localhost
127.0.1.1    myhostname.localdomain    myhostname

Enable NetworkManager:

systemctl enable NetworkManager

14. Set Root Password

passwd

15. Install Boot Loader

For UEFI systems:

pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ARCH
grub-mkconfig -o /boot/grub/grub.cfg

For BIOS systems:

pacman -S grub
grub-install --target=i386-pc /dev/nvme0n1  # Replace with your disk
grub-mkconfig -o /boot/grub/grub.cfg

16. Create a User Account

useradd -m -G wheel username
passwd username

17. Set Up Sudo

Install sudo:

pacman -S sudo

Edit sudoers file:

EDITOR=nano visudo

Uncomment the line:

%wheel ALL=(ALL) ALL

18. Final Steps

Exit the chroot environment:

exit

Unmount all partitions:

umount -R /mnt

Reboot:

reboot

Post-Installation Steps

After logging into your new Arch system, here are some essential next steps:

1. Install a Desktop Environment

KDE Plasma:

sudo pacman -S xorg plasma plasma-wayland-session kde-applications
sudo systemctl enable sddm
sudo systemctl start sddm

GNOME:

sudo pacman -S xorg gnome gnome-extra
sudo systemctl enable gdm
sudo systemctl start gdm

Xfce (lightweight):

sudo pacman -S xorg xfce4 xfce4-goodies lightdm lightdm-gtk-greeter
sudo systemctl enable lightdm
sudo systemctl start lightdm

2. Install Graphics Drivers

NVIDIA:

sudo pacman -S nvidia nvidia-utils

AMD:

sudo pacman -S xf86-video-amdgpu

Intel:

sudo pacman -S xf86-video-intel

3. Install Useful Applications

sudo pacman -S firefox thunderbird vlc libreoffice-fresh gimp

4. Set Up AUR Helper

The AUR (Arch User Repository) contains thousands of community-maintained packages. Using an AUR helper simplifies installation:

git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si

Now you can install AUR packages:

yay -S google-chrome visual-studio-code-bin spotify

5. Enable SSD TRIM (if applicable)

sudo systemctl enable fstrim.timer

6. Set Up Firewall

sudo pacman -S ufw
sudo ufw default deny
sudo ufw allow ssh
sudo ufw enable
sudo systemctl enable ufw

7. Configure Automatic Updates (Optional)

Install pacman-contrib:

sudo pacman -S pacman-contrib

Create timer files:

sudo systemctl enable paccache.timer

Troubleshooting Common Issues

No Internet After Installation

If you can’t connect to the internet after installation:

sudo systemctl start NetworkManager
sudo systemctl enable NetworkManager
nmtui  # Connect using text UI

Boot Problems

If the system doesn’t boot:

  1. Boot from the installation media
  2. Mount your partitions (mount /dev/nvme0n1p3 /mnt)
  3. Chroot into your system (arch-chroot /mnt)
  4. Reinstall and reconfigure GRUB

Failed to Start X Server

This is often due to graphics driver issues. Boot into terminal mode and install the correct drivers.

Advanced Configurations

Full Disk Encryption

For added security, consider setting up LUKS encryption during installation. This requires additional steps during the partitioning phase.

Dual-Booting with Windows

When dual-booting with Windows:

  1. Install Windows first
  2. Install Arch on separate partitions
  3. GRUB will detect Windows automatically during grub-mkconfig

ZFS or Btrfs File Systems

For advanced file system features like snapshots, consider using Btrfs instead of ext4:

mkfs.btrfs /dev/nvme0n1p3

Installing on a Raspberry Pi

Arch Linux ARM provides specific installation instructions for various ARM devices, including Raspberry Pi models.

Maintaining Your Arch System

Regular System Updates

Update your system regularly:

sudo pacman -Syu

System Maintenance

Remove orphaned packages:

sudo pacman -Rns $(pacman -Qtdq)

Clear the package cache:

sudo paccache -r

Backup Strategy

Consider setting up automatic backups using tools like:

  • Timeshift
  • Snapper (for Btrfs)
  • Restic
  • Borg

Conclusion

Congratulations on installing Arch Linux! You now have a minimal, custom Linux distribution that’s exactly what you want it to be—nothing more, nothing less. The learning curve might be steep, but the knowledge gained and the flexibility of your system make it worthwhile.

The Arch philosophy of simplicity and user-centrality gives you complete control over your computing environment. As you continue to use and customize your system, you’ll discover the true power and flexibility that makes Arch Linux a favorite among enthusiasts and professionals alike.

Remember that the Arch Wiki is your best friend for any questions or issues you might encounter. The Arch community also provides support through the official forums and IRC channels.

Happy Arching!

Additional Resources