DEV Community

Richard Halford
Richard Halford

Posted on • Updated on • Originally published at

Part 1: Arch Linux Installation Guide

Originally published on

In part 1 of this series, I will be showing you how to download the latest version of Arch Linux, and write the operating system's image file onto a USB, to be used for installation.

Notes: There are a few presumptions being made for this guide. Regarding yourself and your current setup.

  • You will be moving from another *nix system.
    • This will help with the initial steps, with the programs being used to download the image and write it to a USB drive.
    • If you are coming from Windows, I will try to link to articles explaining this fairly trivial difference.
  • Have access to this guide on another device.

    • As once we get to installing Arch Linux, we'll be stuck in a terminal for some major steps.
  • Can handle looking deep into the empty void of the tty.

  • Make sure not to make any typos - as I try to do the same throughout these guides.

What you'll need:

  • USB drive to write the ISO file on (making sure it's bigger than the ~700 MB ISO size).
  • dd a GNU core utility, to do the writing onto the USB (this will overwrite all data on the drive).
    • This should already be installed on all *nix systems.
    • If you're using Windows, I'd recommend Rufus for this step.
  • gnupg installed if you're not one for taking risks.

Downloading the latest version of Arch Linux

First we'll head over to the official Arch downloads page for the latest image, to be written to our USB drive. Using either BitTorrent or a HTTP mirror.
You can test which mirrors would best perform this task using both the mirror list generator and check the mirror status.

Once you've downloaded an ISO, it's recommended to verify the image signature, for security purposes. So, make sure to also download the PGP signature file (*.iso.sig), and enter the following command:

$ gpg --keyserver-options auto-key-retrieve --verify archlinux-xxxxxxx-x86_64.iso.sig

gpg: assuming signed data in '/home/user/Downloads/archlinux-2021.02.01-x86_64.iso'
gpg: Signature made Mon 01 Feb 2021 15:23:39 GMT
gpg:                using RSA key 4AA4767BBC9C4B1D18AE28B77F2D434B9741E8AC
gpg: key 7F2D434B9741E8AC: public key "Pierre Schmitz <>" imported
gpg: Total number processed: 1
gpg:               imported: 1
gpg: Good signature from "Pierre Schmitz <>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 4AA4 767B BC9C 4B1D 18AE  28B7 7F2D 434B 9741 E8AC
Enter fullscreen mode Exit fullscreen mode

Replacing xxxxxxx with the version downloaded.

You can then go one step further in making sure you've got the right ISO, by cross-referencing the public-key - used to decode the signature. Either by being signed by another trustworthy source. Or by comparing the public key's fingerprint, matches that of the developer who signed the file. By clicking on the author's PGP key and comparing the public key at the top of the page.

Preparing the USB drive for installation

Plug in your USB and find the drive using the terminal:

$ lsblk

sda       8:0    1  28.9G  0 disk
Enter fullscreen mode Exit fullscreen mode

If you ever want to reuse the USB after installation use the command (sudo wipefs --all /dev/sda)

To load the installation media to the USB using dd, use the following command. Remembering to replace the absolute paths (e.g. of=/dev/nvme0n1).

$ sudo dd bs=4M if=/home/user/Downloads/archlinux-2021.02.01-x86_64.iso of=/dev/sda status=progress oflag=sync

708837376 bytes (709 MB, 676 MiB) copied, 35 s, 20.2 MB/s
172+1 records in
172+1 records out
723857408 bytes (724 MB, 690 MiB) copied, 35.6391 s, 20.3 MB/s
Enter fullscreen mode Exit fullscreen mode

Now you should have the Arch Linux ISO on your USB! 🎉

$ lsblk

sda           8:0    1  28.9G  0 disk
└─sda1        8:1    1   629M  0 part
Enter fullscreen mode Exit fullscreen mode

Follow me on Twitter!

Top comments (0)