7

I installed arch on my raspberry pi 4 based on the instructions from the arch linux arm site, expecting to get an aarch64 install, or some variant of armv8. Instead what I got was an install of armv7 as best as I can tell, presumably 32 bit, although I am not certain. This is the output of uname -a:

Linux alarmpi 4.19.108-1-ARCH #1 SMP PREEMPT Tue Mar 10 02:06:04 UTC 2020 armv7l GNU/Linux

Is there an established aarch64 or armv8 install using arch on the RPi4, without extensive tinkering? I do have Manjaro Arm on a different micro SD card (which is aarch64), but wanted to play a little with original arch on my Pi. This is not my first go with arch, although usually it is not my main distro.

3

I was able to install 64-bit archlinux on a Raspberry Pi 4 after seeing @VinnieThePooh's answer which contained a link to root filesystems which I then could burn into the SD Card and boot.

Here are the exact steps I took:

1. Insert your SD Card and run blkid to see connected device names:

sudo blkid

For me the device name was /dev/sda but it might be different for you.

2. Run fdisk to wipe the SD card and set the boot and rootfs partitions:

fdisk /dev/sdX # make sure to change it (X) to your device

At the fdisk prompt, delete old partitions and create a new one:

  • Type o. This will clear out any partitions on the drive.
  • Type p to list partitions. There should be no partitions left.
  • Type n, then p for primary, 1 for the first partition on the drive, press ENTER to accept the default first sector, then type +100M for the last sector.
  • Type t, then c to set the first partition to type W95 FAT32 (LBA).
  • Type n, then p for primary, 2 for the second partition on the drive, and then press ENTER and then ENTER again to accept the default first and last sector. Write the partition table and exit by typing w.

3. Format the paritions and copy the files into the mount points. Update /dev/sdXn to your device name.

mkfs.vfat /dev/sdX1
mkdir -p /mnt/boot
mount /dev/sdX1 /mnt/boot

mkfs.ext4 /dev/sdX2
mkdir -p /mnt/root
mount /dev/sdX2 /mnt/root

wget https://olegtown.pw/Public/ArchLinuxArm/RPi4/rootfs/ArchLinuxARM-rpi-4-aarch64-2020-05-06.tar.gz
bsdtar -xpf ArchLinuxARM-rpi-4-aarch64-2020-05-06.tar.gz -C /mnt/root

sync

mv /mnt/root/boot/* /mnt/boot
umount /mnt/boot
umount /mnt/root

4. Insert SD card into RPi4 and boot. You'll have a vanilla Arch linux 64-bit (ARMv8) installation.

[root@archlinux ~]# uname -a
Linux archlinux 5.4.38-1-ARCH #1 SMP PREEMPT Wed May 6 11:05:57 MDT 2020 aarch64 GNU/Linux

Make sure to use archlinuxarm mirrors in /etc/pacman.d/mirrorlist

Server = http://mirror.archlinuxarm.org/$arch/$repo
Server = http://au.mirror.archlinuxarm.org/$arch/$repo
Server = http://dk.mirror.archlinuxarm.org/$arch/$repo
Server = http://de3.mirror.archlinuxarm.org/$arch/$repo
Server = http://de.mirror.archlinuxarm.org/$arch/$repo
Server = http://de4.mirror.archlinuxarm.org/$arch/$repo
Server = http://eu.mirror.archlinuxarm.org/$arch/$repo
Server = http://de5.mirror.archlinuxarm.org/$arch/$repo
Server = http://gr.mirror.archlinuxarm.org/$arch/$repo
Server = http://hu.mirror.archlinuxarm.org/$arch/$repo
Server = http://pt.mirror.archlinuxarm.org/$arch/$repo
Server = http://sg.mirror.archlinuxarm.org/$arch/$repo
Server = http://tw.mirror.archlinuxarm.org/$arch/$repo
Server = http://ca.us.mirror.archlinuxarm.org/$arch/$repo
Server = http://fl.us.mirror.archlinuxarm.org/$arch/$repo
Server = http://nj.us.mirror.archlinuxarm.org/$arch/$repo
Server = http://vn.mirror.archlinuxarm.org/$arch/$repo

Then refresh mirror list

pacman -Syyu
2

You can throw an eye over there: (rootfs, just use it as plain Arch image):

https://olegtown.pw/Public/ArchLinuxArm/RPi4/rootfs/

I'm now on 4.19.114 kernel (image from March,8); works quite good, Wifi and Bluetooth are on place (the latter needs a couple of tweaks, of course, but it works at last). Since I had a couple of upgrades, I'm not sure what's about last images, but with early vers there was problem with name resolution, hence with Internet access, so You should start with static IP, then install DHCP client and switch to DHCP after. BTW, update are near there, in folders /firmware and /kernel. Don't forget about matching all updates to the same kernel version

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.