up_board_arch_linux_systemd
Table of Contents
Up Board - Arch linux / EFI / SystemD
Intel x5-Z8350 QuadCore 1.44Ghz (1.92GHz) 64 bit 2W CPU.
http://www.up-board.org
Boot & network configuration
- Download the latest Arch Linux ISO and copy it to a USB-drive.
- Connect the Up board to the network, a monitor and keyboard.
- Boot the Up Board, press F7 and select the USB-drive.
- Check if you received an IP-address over DHCP, else request one with
dhclient
. - Install SSH to continue the installation over the network:
pacman -Sy pacman -S openssh gpart passwd root systemctl start sshd # Connect to the Up board over SSH. ssh root@<IP-address>
Partition & filesystems
- Determine the internal disk name with
lsblk
. In this case it ismmcblk0
. - Wipe signatures from drive:
wipefs /dev/mmcblk0 -a
- Create partitions for EFI, root filesystem and swap.
gdisk /dev/mmcblk0 GPT fdisk (gdisk) version 1.0.1 Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries. Command (? for help): o create a new empty GUID partition table (GPT) n, 512M, type EF00 (EFI) n, 2G, type 8200 (swap) n, rest of disk, type 8300 (linux)
- Create the filesystems:
mkfs.fat -F32 /dev/mmcblk0p1 mkswap /dev/mmcblk0p2 mkfs.ext4 /dev/mmcblkp3
- Mount the filesystems:
swapon /dev/mmcblk0p2 mount /dev/mmcblk0p3 /mnt # Root filesystem mkdir /mnt/boot mount /dev/mmcblk0p1 /mnt/boot # EFI filesystem mounted at /boot
Install Arch Linux
- Install Arch Linux on the filesystems:
pacstrap /mnt base
- Generate the
fstab
:genfstab -U /mnt >> /mnt/etc/fstab
- Enter the chroot:
arch-chroot /mnt
- Configure the time zone
ln -sf /usr/share/zoneinfo/Europe/Amsterdam /etc/localtime
- Set system time to hardware clock:
hwclock --systohc
- Configure the locale:
vi /etc/locale.gen locale-gen vi /etc/locale.conf LANG=en_US.UTF-8
- Set the hostname,
archup
in this example:vi /etc/hostname vi /etc/hosts 127.0.1.1 archup.localdomain archup
- Set the root password and create additional accounts:
passwd root useradd ...
- Install packages on new filesystem:
pacman -S intel-ucode openssh gpart
- Verify that efivars are available, ie booted in EFI-mode:
ls /sys/firmware/efi/efivars
- Install EFI boot files:
bootctl install
- Configure loader defaults:
vi /boot/loader/loader.conf timeout 3 default archlinux
- Add an Arch Linux entry:
vi /boot/loader/entries/archlinux.conf title archlinux linux /vmlinuz-linux initrd /intel-ucode.img initrd /initramfs-linux.img options root=PARTUUID="fcf051c4-9d53-48b1-96eb-3efbc23388ed" rw
- Exit the chroot and unmount the new filesystems:
exit cd umount -R /mnt
- Boot from internal disk, remove USB-disk:
reboot
Post install configuration
- Configure SystemD networking:
systemctl enable systemd-networkd systemctl start systemd-networkd systemctl enable systemd-resolved systemctl start systemd-resolved vi /etc/systemd/network/50-wired.network [Match] Name=enp1s0 [Network] DHCP=ipv4 # If you want an additional IP-address in case DHCP is not available. #[Address] #Label=enp1s0:0 #Address=10.10.10.1/30 rm /etc/resolv.conf ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
- Start and enable SSHd:
systemctl enable sshd systemctl start sshd
- Configure firewall scripts, for example ufw.
up_board_arch_linux_systemd.txt · Last modified: 2021/10/09 15:14 by 127.0.0.1