/install-arch

Arch Linux installation guide

Installation guide

This installation guide is bases on the official Arch Linux page.

arch

Keyboard layout

To set the keyboard layout:

loadkeys la-latin1

Available layouts can be listed with:

ls /usr/share/kbd/keymaps/**/*.map.gz

Booted mode

To verify the boot mode, list the efivars directory:

ls /sys/firmware/efi/efivars

If the command shows the directory without error, then the system is booted in UEFI mode. If the directory does not exist, the system may be booted in BIOS mode.

Connect to the internet

It is recommended to coccect to the interner through an Ethernet cable.

System clock

Use timedatectl to ensure the system clock is accurate:

timedatectl status

Partition the disks

To identify the devices, use lsblk.

Use cfdisk to modify partition tables:

cfdisk /dev/the_disk_to_be_partitiones
Mount point Type size
/mnt/boot/efi Efi system 1 GB
[SWAP] Linux swap More than 512 MB
/mnt Root(/) Desired size
/mnt/home Home Remainder of the device

Format the partitions

Format the partitions with the proper file system.

mkfs.ext4 -L ROOT /dev/root_partition
mkfs.ext4 -L HOME /dev/home_partition
mkswap -L SWAP /dev/swap_partition
mkfs.fat -F 32 /dev/efi_partition
fatlabel /dev/efi_partition BOOT

Mount the file system

To mount the partitions created is the following.

mount /dev/root_partition /mnt
mount --mkdir /dev/efi_partition /mnt/boot/efi
mount --mkdir /dev/home_partition /mnt/home
swapon /dev/swap_partition

Install essential package

Use the pacstrap script to install the base package, Linux kernel and firmware for common hardware:

pacstrap -K /base linux-zen linux-firmware

You can add other packages you need or use pacman while chrooted into the new systm.

Packages I recommendes installing.

neovim networkmanager grub os-prober efibootmgr

Fstab

Generate an fstab file.

genfstab -L /mnt >> /mnt/etc/fstab

Chroot

Change root into the new system:

arch-chroot /mnt

Time zone

Set the time zone:

ls -sf /usr/share/zoneinfo/Region/City /etc/localtime

Run hwclock to generate /etc/edjtime:

hwclock --systohc

Localization

Edit /etc/locale.gen. Generate the locales by running.

locale-gen

Create the locale.conf file and vconsole.conf.

echo "LANG=es_MX.UTF-8" >> /etc/locale.conf
echo "KEYMAP=la-latin1" >> /etc/vconsole.conf

Network configuration

Create the hostname file.

echo "hostname" >> /etc/hostname

Enable NetworkManager services if the package is installed.

pacman -S networkmanager

systemctl enable NetworkManager.services

Root password

Set the root password

passwd

Boot loader

Install the GRUB bootloader

pacman -S grub efibootmgr os-prober

Execute the following command to install the GRUB EFI.

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg

Add the following to _/etc/default/grub. then re-run grub-mkconfig.

GRUB_DISABLE_OS_PROBER=false