The first step I check when I boot to the DVD is to make sure I have an IP from DHCPip addr
Next, for me, I setup keyboard layoutloadkeys us
Next, I check to see if arch is booted into EFI models /sys/firmware/efi/efivars
Next, I check the link and then ping a site to make sure DNS is workingip linkping archlinux.org
Next, I setup NTP. I typically point to my firewall since it's a my NTP serverpacman -Sy ntpntpdate 10.0.0.1timedatectl set-ntp true
Next, I make sure the system can see my disk and then I start provisioning it. First, I list what I can see and then make note of the dev pathfdisk -l
Next, I create boot, swap, and LVMfdisk /dev/sda
Create gpt disklabelg
N for new partitionn
P for primaryp
1 for the first partition1
Typically, it starts with 2048 section2048
I set the size to 1M+1M
Set partition typet
And label it as boot partition4
Next I setup partition for swap. Typically, it matches however much RAM you have.
This system has 16g of ram. So we want 16G of swapn24096+16G
Set partition type to swapt219
Next we setup partition for LVM. This allows us to add disk and space later on the flyn3accept defaultaccept default
Set partition type to Linux LVMt330
Write changes to diskw
Next run fdisk -l to see if it looks something like thisDevice Start End Sectors Size Type/dev/sda1 2048 4005 2048 1M BIOS boot/dev/sda2 4096 33558527 33554432 16G Linux swap/dev/sda3 33558528 125829086 92270559 44G Linux LVM
Next setup LVM by starting with a scan for LVM partitionslvmdiskscan
Create the physical volumepvcreate /dev/sda3
Create the volume groupvgcreate VolGroup00 /dev/sda3
List the volume groupsvgdisplay
Create the logical volume with 100% of available space on this partitionlvcreate -l 100%FREE VolGroup00 -n lv_root
List logical volumeslvdisplay
Activate the LVM partitionmodprobe dm_modvgscanvgchange -ay
Format root LVM partition with EXT4mkfs.ext4 /dev/VolGroup00/lv_rootmount /dev/VolGroup00/lv_root /mnt
Format the swap partitionmkswap /dev/sda2
Activate swapswapon /dev/sda2
Copy arch linux over to the diskpacstrap /mnt base linux linux-firmware
Setup fstabgenfstab -U /mnt >> /mnt/etc/fstab
Change root filesystemarch-chroot /mnt
Set timezoneln -sf /usr/share/zoneinfo/US/Eastern /etc/localtime
Setup hardware clockhwclock --systohc
Set localizationlocale-gen
Add LANG=en_US.UTF-8echo "LANG=en_US.UTF-8" >> /etc/locale.conf
Set virutal consoleecho "KEYMAP=us" > /etc/vconsole.conf
Set hostnameecho "atl-arch" > /etc/hostnameecho "127.0.0.1 atl-arch" >> /etc/hosts
Setup initramfsmkinitcpio -P
Set root passwordpasswd
Install bootloaderpacman -Sy grubgrub-install --target=i386-pc /dev/sdagrub-mkconfig -o /boot/grub/grub.cfg
Edit /etc/default/grub and add LVM support to GRUB_PRELOAD_MODULESGRUB_PRELOAD_MODULES="... lvm"
Add lvm2 to mkinitcpio.confvi /etc/mkinitcpio.confHOOKS="base udev autodetect modconf block lvm2 filesystems keyboard fsck"
Install lvm2pacman -Sy lvm2
Regenerate ramdiskmkinitcpio -p linux
Finally install some packages needed. I typically run I3 for a desktop environmentpacman -Sy i3-gaps i3-wm i3blocks i3lock i3status net-tools dnsutils whois nvidia-utils ipcalc sudo xorg-xinit mlocate nano openssh-server
Exit the chrootexit
Umount the root filesystemumount -R /mnt
Reboot and boot to the diskreboot
Afterwards, setup up static IPip link set ens192 upip address add 10.0.0.10/24 broadcast + dev ens192ip route add 0.0.0.0/0 via 10.0.0.1 dev ens192cat /etc/systemd/network/ens192.network [Match]Name=ens192[Network]Address=10.0.0.10/24Gateway=10.0.0.1DNS=10.0.0.1systemctl start systemd-networkdsystemctl enable systemd-networkdsystemctl start sshdsystemctl enabled sshdpacman -Sy ntpnano /etc/ntp.conf
Replace server with 10.0.0.1
Add interface listeninginterface ignore wildcardinterface listen lontpdate 10.0.0.1systemctl start ntpdsystemctl enable ntpd