timedatectl set-ntp true
timedatectl status
Perform partitioning with cfdisk
and verify with lsblk
before proceeding.
Format the first partition as EFI (boot)
mkfs.fat -F32 /dev/sda1
Create swap
mkswap /dev/sda2
Format root partition
mkfs.ext4 /dev/sda3
Format home partition
mkfs.ext4 /dev/sda4
mount /dev/sda3 /mnt
mkdir -p /mnt/{boot,home}
mount /dev/sda1 /mnt/boot
mount /dev/sda4 /mnt/home
swapon /dev/sda2
pacstrap /mnt base base-devel linux linux-firmware linux-headers vim git wget intel-ucode
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
Set local timezone
ln -sf /usr/share/zoneinfo/America/Chicago /etc/localtime
hwclock --systohc
Set locales by uncommenting en_US.UTF-8
from /etc/locale.gen
and then generate the selected locale(s)
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
Set hostname
echo "precision" > /etc/hostname
Place below content in the file /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 precision.localdomain precision
passwd
pacman -S dhcpcd --noconfirm
systemctl enable dhcpcd
Create user
useradd ismail -m -c "Mohammed Ismail Ansari"
Set password for user
passwd ismail
Add user to wheel (and other) group(s)
usermod -aG wheel,audio,video,optical,storage ismail
Configure sudo for 'wheel' group
visudo
Enable multilib
repository for pacman by uncommenting [multilib]
section in /etc/pacman.conf
and then update pacman database with pacman -Syu
.
Install grub and company
pacman -S grub efibootmgr os-prober ntfs-3g
Install grub
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
Generate grub configuration file
grub-mkconfig -o /boot/grub/grub.cfg
Exit chroot
exit
Unmount all mounted partitions
umount -a
Reboot
reboot now