Arch Linux is a general-purpose Linux distribution for x86-64 computers and is very popular among the intermediate and advanced Linux users. Arch Linux project is purely driven by the community and the core development circle.
The design of Arch Linux’s follows KISS principle (“keep it short and simple”) as the general guidelines which mean you will only get a minimal base system from the OS installation and have to configure the system further to use it.
Arch Linux offers new packages/updates on the rolling release model, i.e., packages are provided throughout the day. Pacman (Arch Linux’s package manager) allows users to keep systems updated easily, daily.
Arch Linux has dropped support for 32bit OS from Feb 2017 and now supports only x86_64 installation.
- An x86_64 (64 bit) machine
- 512 MB of RAM
- At least 1GB of free disk space
- An Internet Connectivity
- USB flash drive or Blank CD for burning the installation image.
Install Arch Linux
Here, we will see how to install Arch Linux latest version (v 2018.04.1) from USB / CD.
Arch Linux installation process requires an internet connection to retrieve packages from a remote repository.
Step 1: Download Arch Linux
Download the latest version of Arch Linux from the official website.
Step 2: Create a Live USB / Write a Bootable CD
We will now create a live USB / write a bootable CD from the downloaded ISO image.
Create a live USB:
/path/to/archlinux.iso with the path to the downloaded ISO file and
/dev/sdx with your USB drive name.
dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress oflag=sync
Write a bootable CD:
/path/to/archlinux.iso with the path to the downloaded ISO file.
growisofs -dvd-compat -Z /dev/sr0=/home/user_name/Downloads/LinuxMint.iso
Step 3: Boot from Live USB or CD
Power on your system and press
F2, F10 or F12 to change/select the boot order.
To boot from Live USB, you need to select boot from USB or removable drive. To boot from CD, you need to select boot from CD/DVD ROM drive.
Once system boots from Live USB or CD, you will get an installer screen, like below.
Choose Boot Arch Linux (x86_64) and then press Enter.
Finally, after various checks, you will get a root prompt.
Step 4: Setup Network
As I said earlier, the system needs an internet connection. If your environment has a DHCP server, then the system will get IP Address automatically.
Check the internet connectivity.
ifconfig ping google.com -c 2
If your system does not get a reply, then configure static IP address on your system so that your system can connect to the internet to download packages.
ip addr flush dev enp0s3 ifconfig enp0s3 192.168.1.100 netmask 255.255.255.0 route add default gw 192.168.1.1 echo "nameserver 192.168.1.1" >> /etc/resolv.conf echo "nameserver 126.96.36.199" >> /etc/resolv.conf
Replace network card and IP address according to your environment.
Step 5: Partition Disk
We will now create the partitions on the hard disk for the OS installation. First, list the available disks using the fdisk command.
The system has a 40GB disk (/dev/sda) and will use that disk for OS installation. The name of the disk varies depending upon the system. The disks can have other names such as vda, hda, etc.
Now, we will use fdisk command to create partitions as per the requirement.
Partition details are shown below.
/boot – 500M
swap – 4GB (Double the RAM)
/ – ~ 35 GB (Remaining Space)
Once you have created partitions, use
p to confirm the creation of partitions and then,
w to save the changes.
Verify parttions using the
fdisk -l command. We now have three partitions.
/dev/sda1 – /boot
/dev/sda2 – SWAP
/dev/sda3 – / (root)
Step 5: Create Filesystem
Now, its time format the created partitions with the required file systems. You can format /boot (/dev/sda1) as EXT2 or EXT3, SWAP (/dev/sda2) as SWAP and / (/dev/sda3) as EXT4 filesystem.
mkfs.ext2 /dev/sda1 mkfs.ext4 /dev/sda3 mkswp /dev/sda2
Step 6: Mount Partitions
Once you have formatted the partitions, use the mount command to mount it.
/ (root) partition must be mounted on
/mnt directory. Also, you would need to initialize the swap partition.
mount /dev/sda3 /mnt swapon /dev/sda2
If you have additional partitions, then those need to be mounted on the respective directories on /mnt. For Ex:
/home partition needs to be mounted on
Step 7: Install Arch Linux Base System
Now, its time to install Arch Linux base system.
pacstrap /mnt/ base base-devel
The installation will take at least 15 to 30 minutes to complete depending upon your internet speed.
The below message confirms you that the Arch Linux Installation has been completed successfully.
Step 8: Create fstab
After the base installation, generate the fstab file for the system using the
genfstab /mnt >> /mnt/etc/fstab
Verify the fstab entries using the below command.
Step 9: Arch Linux System Configuration
To configure Arch Linux further, you must chroot to the new system. The chroot changes the root directory for the current running process and their children
Step 10: Set System Language
You can configure the system language by uncommenting the required languages from
Uncomment en_US.UTF-8 UTF-8 for American-English.
Generate the locale.
Set the system locale by placing the
LANG variable in
echo "LANG=en_US.UTF-8" > /etc/locale.conf
Step 11: Set Timezone
Now, configure the system time zone by creating a symlink of your timezone to
ln -sf /usr/share/zoneinfo/US/Central /etc/localtime
You can find the available timezones under
Also, set the hardware clock to UTC.
hwclock --systohc --utc
Step 12: Set Hostname
Place the system hostname in
echo "archlinux.itzgeek.local" > /etc/hostname
Step 13: Set root password
passwd command in the terminal to set the root password.
Step 14: Install GRUB Boot Loader
Arch Linux requires boot loader to boot the system. You can install grub boot loader using the below commands.
pacman -S grub grub-install /dev/sda grub-mkconfig -o /boot/grub/grub.cfg
Step 15: Reboot
Exit from chroot system and then reboot.
Once the reboot is complete, you would get the Arch Linux login prompt. Log in as the root user and the password you set during the os installation (step 13).