A beginner-friendly Arch Linux installation guide with:
- Manual installation steps
- UEFI support
- Dual boot support
- GRUB setup
- Post-install automation script
Before starting:
- Backup important data
- Disable Secure Boot
- Create a bootable Arch Linux USB
- Boot in UEFI mode
Download Arch Linux ISO: https://archlinux.org/download/
After booting into the live environment:
ping archlinux.orgIf using WiFi:
iwctlInside iwctl:
device list
station wlan0 scan
station wlan0 get-networks
station wlan0 connect WIFI_NAME
exitlsblkExample NVMe drive:
/dev/nvme0n1Open cfdisk:
cfdisk /dev/nvme0n1Create:
| Partition | Size | Type |
|---|---|---|
| EFI | 512M | EFI System |
| Swap | Optional | Linux Swap |
| Root | Remaining | Linux filesystem |
If dual booting with Windows:
- Reuse the existing EFI partition
- DO NOT format the EFI partition
Example:
| Partition | Usage |
|---|---|
| nvme0n1p1 | EFI |
| nvme0n1p2 | Swap |
| nvme0n1p3 | Root |
Format root:
mkfs.ext4 /dev/nvme0n1p3Format EFI:
mkfs.fat -F32 /dev/nvme0n1p1Create swap:
mkswap /dev/nvme0n1p2
swapon /dev/nvme0n1p2mount /dev/nvme0n1p3 /mnt
mkdir /mnt/boot
mount /dev/nvme0n1p1 /mnt/bootpacstrap -K /mnt base linux linux-firmware base-devel \
networkmanager sudo grub efibootmgr \
nano neovim gitGenerate fstab:
genfstab -U /mnt >> /mnt/etc/fstabChroot into system:
arch-chroot /mntgit clone https://github.com/USERNAME/REPOSITORY.git
cd REPOSITORY
chmod +x arch_install.sh
./arch_install.shgrub-install --target=x86_64-efi \
--efi-directory=/boot \
--bootloader-id=GRUBGenerate config:
grub-mkconfig -o /boot/grub/grub.cfgInstall os-prober:
pacman -S os-proberEnable os-prober:
nano /etc/default/grubUncomment:
GRUB_DISABLE_OS_PROBER=falseRegenerate GRUB:
grub-mkconfig -o /boot/grub/grub.cfgExit chroot:
exitUnmount:
umount -R /mntReboot:
rebootRemove USB after reboot.
Update system:
sudo pacman -SyuEnable Bluetooth:
sudo systemctl enable bluetoothInstall audio packages:
sudo pacman -S pipewire pipewire-pulse wireplumber- NVIDIA users should install NVIDIA drivers
- AMD users usually only need mesa
- Intel users should install intel-ucode
- AMD users should install amd-ucode
MIT