Arch Linux is a well-known Linux distribution that is both lightweight and flexible. With constant updates to the distribution, many VPS providers and customers are looking to use Arch Linux. While installation may not be easy for everyone, we have prepared an Arch Linux installation guide for you to walk you through the steps of setting up a complete system and customizing it. If you are looking for a reliable environment to run Arch or any other Linux distribution in the cloud, Linux VPS hosting is a great option for providing performance and customization options.

 

1. Preparation before installation

To install Arch Linux, you will need these Requirements:

Category

Requirement

Notes/Recommendation

CPU Architecture

Must support x86_64

32-bit is not supported

RAM (Memory)

Minimum 512 MB

1 GB or more recommended for smoother setup

Disk Space

At least 2 GB free

More space is needed for desktop environments and extra packages

Internet Connection

Active and stable connection

Required to access online repositories during installation

 

For more information on the differences between Linux distributions and how to host the systems, you can refer to our blog post: Debian vs Arch

Checking the boot mode

To verify the boot mode, you can run the following command in the live installation environment:

# cat /sys/firmware/efi/fw_platform_size

If the returned value is 64 or 32, the system is booted in UEFI mode. Otherwise (No such file or directory), the boot mode is Legacy BIOS. Choosing the boot mode is important when preparing partitioning and setting up the bootloader.

 

2. Download and Create Installation Media

Download the latest ISO from the official Arch Linux download page from its official website. We also encourage you check the PGP signature of the ISO you downloaded if you wish to verify that this ISO file is authentic. Then, you can turn this ISO to a USB drive with a program such as dd (on Linux), Rufus (on Windows), or Etcher to make bootable installation media.

Boot Mode: UEFI vs Legacy BIOS

Most newer computers use UEFI boot mode. You will need to format using a GTP partition table in order to boot from UEFI. However, the older BIOS/Legacy does typically need a MBR partition table.

3. Disk Partitioning

Before install Arch Linux, you need to partition the target disk. The minimum required partitions are:

  • One partition for the root directory (/).

  • In UEFI systems: an EFI partition (EFI System Partition) to store the bootloader.

  • Optional: a swap partition for virtual memory (a minimum of 4 GB is generally recommended).

For example, in a UEFI installation with GPT, you could create the following partitions: a /boot (or /boot/efi) EFI partition of about 1 GB, a swap partition of at least 4 GB, and a root (/) partition with the remaining space (around 23–32 GB or more).

BIOS systems with MBR

In BIOS systems with MBR, usually only / and swap are required (a separate boot partition is not necessary unless certain specific setups demand it).

Use tools such as fdisk, gdisk, or parted to create partitions. After creating them, format the partitions. For example:

  • mkfs.ext4 /dev/your_root to format the root (/) partition with the ext4 filesystem.

  • mkswap /dev/your_swap to set up the swap partition.

  • If you created an EFI partition, format it as FAT32 (for example: mkfs.fat -F32 /dev/your_efi).

 

4. Mounting Partitions

After Arch Linux partitioning, you need to mount the partitions. For example, in a live environment enter these commands:

# mount /dev/your_root_partition /mnt

# mkdir -p /mnt/boot   

# mount --mkdir /dev/your_efi_partition /mnt/boot   

# swapon /dev/your_swap_partition   

(Be sure to replace /dev/your_*_partition with the names of your partitions.) These commands are according to the official Arch Linux installation guide and manual.

5. Base System Installation

 Before installing packages, update the mirror list (for example, with reflector) to ensure the fastest servers are selected. Review the generated /etc/pacman.d/mirrorlist file.

Then, Install Essential Packages. To do this, use pacstrap to install the core packages:

# pacstrap -K /mnt base linux linux-firmware

This installs the base system, the Linux kernel, and firmware packages on the new system. You can also add extra packages such as CPU microcode updates (for AMD or Intel), networking tools (like NetworkManager or dhcpcd), and a text editor (e.g., nano).

6. Initial System Configuration

Now it's time for the initial system configuration. This  part of Arch Linux step-by-step installation guide may seem a bit long, but take your time and follow the steps exactly.

  1. Generate fstab

Create the filesystem table for mounted partitions under /mnt so the system can mount them at the next boot:

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

This generates /mnt/etc/fstab based on partition UUIDs. Always check the output and edit if needed.

  1. Chroot into the Installed System

 Enter the installed environment to continue configuration:

# arch-chroot /mnt

  1. Set Time Zone

 Define your local time zone (for example, us/ny):

# ln -sf /usr/share/zoneinfo/northamerica/newyork /etc/localtime

# hwclock --systohc

The first command creates a symbolic link to the time zone, and the second synchronizes the hardware clock.

  1. Localization

 Open /etc/locale.gen and uncomment the lines for the desired locale (e.g., en_US.UTF-8 UTF-8). Then run:

# locale-gen

Next, create a new /etc/locale.conf file and set the LANG variable (any locale you prefer).
If you use a non-default keyboard layout, configure it in /etc/vconsole.conf.

  1. Hostname and Networking

 Set a hostname for your system by writing a chosen name (e.g., myarch) in /etc/hostname. Then create or edit the /etc/hosts file and add the following lines:

127.0.0.1 localhost 

127.0.1.1 myarch.localdomain myarch

For networking, install and enable an appropriate service such as systemd-networkd, systemd-resolved, or NetworkManager. Finally, use systemctl enable to ensure essential services start automatically at boot.

  1. Root Password and User Creation

 Set the root user password with the following command:

# passwd

(You will be prompted to enter the new password after execution). Then it is better to create a regular user with sudo privileges. For example:

# useradd -m -G wheel -s /bin/bash username

# passwd username

The -m command creates the home directory, -G wheel adds the user to the wheel group (for sudo use), and -s sets the login shell.

 

7. Bootloader Configuration

To boot your system after a reboot, you need to install and configure a bootloader. There are two main options for Arch Linux bootloader setup: GRUB or systemd-boot (UEFI specific).

Installing and Configuring GRUB

On BIOS/Legacy systems: Install the grub package and run the following command:

# grub-install --target=i386-pc /dev/sdX

(Replace /dev/sdX with the boot disk, not a partition)

On UEFI systems: Install the grub and efibootmgr packages and make sure the EFI partition is mounted at /boot/efi or similar. Then run the following command (in chroot):

# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB

This command will install the EFI boot loader on the EFI partition with the GRUB ID

Generate the configuration file: After installation, generate the main configuration file:

# grub-mkconfig -o /boot/grub/grub.cfg

This command will generate the boot menus based on the /etc/default/grub settings. If you have other operating systems (e.g. Windows), install the os-prober package and run the same command again to add them to the GRUB menu.

 

Overview of systemd-boot (UEFI)

If you want to use a simpler boot loader (for UEFI only), you can use systemd-boot. In this case, you just need to run the following command in chroot to install systemd-boot on the EFI partition:

# bootctl install

This command will move the necessary files to the EFI partition and create a UEFI entry called “Linux Boot Manager”. After that, you need to configure the loader files and boot entries in esp/loader/entries/*.conf (for example, booting the Linux kernel).

 

8. Network Configuration

For network, you have two options; Ethernet Connection and Wireless Connection.

Ethernet Connection

Usually, after installation, you just need to connect the network cable and enable the network management service (systemd-networkd or NetworkManager). DHCP automatic configuration is usually the default. If you need a static IP address, you can edit the networkd or Netctl configuration file as desired.

Wireless Connection (Wi-Fi)

In a live installation, the iwctl tool (iwd package) is used to connect to the Wi-Fi: First, make sure that the wireless card is not blocked by rfkill, then in the iwctl shell, type the following commands:

# iwctl

[iwd]# device list 

[iwd]# station wlan0 scan

[iwd]# station wlan0 get-networks

[iwd]# station wlan0 connect YourSSID

(Replace wlan0 with the name of your card and YourSSID with the name of the network.) If prompted for a password, enter it. Once installed, you can use NetworkManager or packages like wpa_supplicant to automatically connect to wireless on your new system.

 

9. After installation: Final configuration

We're almost at the end of setting up Arch Linux, with just a few small steps left.

1. Enable services

Enable essential services. For example, on a typical desktop system, enable NetworkManager (or systemd-networkd and systemd-resolved) and ssh (if needed) with the systemctl enable NetworkManager commands. For servers, services like sshd are important.

2. Update the system

 After the first boot, sync the repositories and update the system:

# pacman -Syu

3. Install required software

Depending on the use case of the system (e.g. desktop or server), install the desired software and desktop environment (e.g. KDE, GNOME, development tools, etc.). A list of commonly used applications is available in the Arch repositories.

4. Install drivers

Install firmware or driver packages (e.g. intel-ucode or xf86-video-* depending on your hardware) for better performance.

5. Security features

Make sure that security updates are installed on your system. You can enable the pacman.timer service to update the system periodically. Also, check the firewall configuration (e.g. ufw).

 

Troubleshooting Common Problems

You may encounter some fairly common problems during or after installation. Below we will mention a few of them.

The system does not boot after installation

make sure the UEFI/BIOS boot mode is set correctly. You can test the recognized boot UEFI with stable and configured GRUB or “systemd-boot” boot entry enabled in firmware and if Secure Boot is enabled turn it off or install the GRUB bootloader with Shim.

The partitions fail to mount and install

If partitions are not presented to install on, confirm that the disk controller set to RAID/ IDE/ ACHI mode in the BIOS/UEFI is being utilized. The fdisk -l should present the disks. You may need to repartition if GPT or MBR was misconfigured.

The network card fails to function properly

Confirm that the network card (or wireless) driver is recognized in the live system. The ip link and rfkill list commands are useful. Use iwctl (iwd) or wpa_supplicant to manage and connect to wireless.

The grub-install command installation errors out

If an error message is generated mentioning grub, confirm that, the boot paths in the EFI directory are specified correctly and the efibootmgr `package is installed. Booting in BIOS mode, confirm the grub-install command is directed to the boot partition (MBR).

Conclusion and Next Steps

By following this Arch Linux installation guide, you will have a minimal and stable Arch Linux system. Now you can install more packages and customize the system according to your needs. As a next step, you can add a graphical interface, user applications and desired services. 

If you’re planning to install Arch Linux, you need to have a reliable server environment which can make the process smoother and faster.  We offer instant setup in under 5 minutes for our Linux VPS, NVMe and SSD storage, and free daily backups, all with transparent pricing and no hidden fees.

👉 View linux vps

 

People also read: