ArchLinuxARM on Raspberry Pi

Installing ArchLinuxARM on Raspberry Pi B Rev 1 (RPi2)

Ok, I’m trying to install ArchLinuxARM on my RPi2 (again - due to SD Card corruption). Starting point is always ArchLinuxARM Wiki with very little but precise informations. Syncing SD card takes away a lot of time. First of all you will need to set up time and date (RPi doesn’t have any clock battery), as explained here. Now your RPi will use the correct date and time, very useful if you won’t get strange errors. There are some problem about GPG keys (key not found), so it is really suggested to run (as root):

  1. pacman-key --init
    2. pacman-key --populate archlinuxarm
    3. pacman -S archlinuxarm-keyring
    4. pacman-key --populate archlinuxarm

Here they explain to enable haveged, but it is deprecated (it gives an error: available only for kernel=<5.16); use rngd, instead, as they explain here and remove haveged. Now it’s time to update the whole sistem: pacman -Suy Edit mirrors with nano -w /etc/pacman.d/mirrorlist. Mount external HDD:

  1. install fdisk through package util-linux
    2. find HDD UUID with blkid
    3. create directory for external HDD with mkdir /mnt/usbdisk01
    4. mount disk with mount UUID=5a87f246-6c2e-acf4-ae8c-91fb584eb32d /mnt/Media
    5. with ls /mnt/Media you can see the content of the disk (Photo, Video) To make the bind mount persistent across reboots, add it to fstab with nano -w /etc/fstab, adding this line at the end: UUID=5a87f246-6c2e-acf4-ae8c-91fb584eb32d /mnt/usbdisk01 ext4 defaults 0 2

If you have few MB of RAM (as me) and a headless installation, you could lower the quantity of memory reserverd for video; change configuration file with nano -w /boot/config.txt adding gpu_mem_256=32 at the end. If you don’t touch this value, in 256 MB version default value is 64, miminum is 16; I think 32 is a good middle way. Here the source

I want to build an NFS server: I am going to follow this guide:

  1. install nfs-utils package
    2. create directory for nfs with mkdir -p /srv/nfs/Media /mnt/usbdisk01/Media
    3. bind directory together with mount --bind /mnt/usbdisk01/Media /srv/nfs/Media To make the bind mount persistent across reboots, add it to fstab with nano -w /etc/fstab, adding this line at the end: UUID=5a87f246-6c2e-acf4-ae8c-91fb584eb32d /mnt/usbdisk01 ext4 defaults 0 2 Adapt exports file to assign permission, with nano -w /etc/exports; as an example you could add lines like theese: /srv/nfs/Media 10.0.0.8(ro,no_subtree_check) /srv/nfs/Media 10.0.0.20(ro,no_subtree_check) You could find more advanced options here, on Arch Linux Wiki. At last:
  2. reload exports with exportfs -arv
    2. show exports with exportfs -v
    3. enable nfs server with systemctl enable nfs-server
    4. start nfs server with systemctl start nfs-server
    5. check nfs server status with systemctl status nfs-server

I am confortable with sudo, so install sudo package and add user alarm to wheel group (with visudo)