A few weeks ago, we took a look at how to install the new Rocky Linux 8 on Arm, using a Raspberry Pi, as a replacement for CentOS. This is due to Red Hat altering the release strategy for CentOS, transitioning from a stable methodology to more early and rapid development. However, there is also a second community build aiming to fill the gap left by Red Hat, so today we will look at the process of installing the new AlmaLinux 8, again on the Raspberry Pi 4 with community-built UEFI firmware.
Like Rocky Linux, this new AlmaLinux is a Linux distribution put together by the community, in order to replace the stable, predictable manner in which packages are updated. AlmaLinux comes in both x86 and aarch64 builds of the OS, and we’ll be using the aarch64 build of course for our Pi.
We’re going to replicate the previous how-to for the most part, so let’s recap the hardware we’ll use:
- Raspberry Pi 4B
- SD Card
- USB stick for install media
- USB Stick or USB-to-SSD adapter for destination (permanent storage) media
To get started, we are going to download and flash the community-built UEFI firmware for the Raspberry Pi to an SD Card. This UEFI implementation is closer in nature to a “normal” PC UEFI BIOS, and will cause the Pi to boot a bit more standard than would be achieved with the Raspberry Pi OS method. The UEFI firmware is placed directly on an SD Card, and when the Pi is powered on it will read the UEFI firmware and can then boot from a USB stick or over the network. To install the UEFI firmware, download the latest release .zip file (RPi4_UEFI_Firmware_v1.28.zip at the time of this writing) from https://github.com/pftf/RPi4/releases.
Next, unzip this .zip file you just downloaded, and copy the contents to an SD Card. The card needs to be formatted as FAT32, so if you are re-purposing an SD Card that had Linux on it previously you might need to delete partitions and re-create a FAT32 partition on the SD Card. Once the files are copied to the SD Card, it will look like this:
With the SD Card complete, we can now proceed to download AlmaLinux. Browse to https://almalinux.org and click on Download. You will have the option for x86 or aarch64 downloads, obviously we’ll want the Arm64 version so click on that link, and then choose a mirror close to you. Once you are taken to the mirror’s repository, you’ll see you have Boot, Minimal, or DVD .iso files to choose from. For this tutorial, we’ll go with minimal, so click on that one and your download will begin. Once the download is complete, flash the file to a USB stick using Rufus, Etcher, WinDisk32, or any other method you prefer.
Now that we have our SD card for booting and USB stick for installing, we just determine what to use for destination storage. As the Pi doesn’t have any onboard eMMC, and the SD Card slot is occupied by our firmware, we could use another, separate USB drive, network attached storage, or for this tutorial we’ll actually go with a USB-to-SSD adapter, which will allow us to hook up a 2.5 inch SATA SSD as our permanent storage.
Plug the SSD into the adapter, and then connect the USB plug into one of the USB 3.0 (blue) ports on the Pi. Attach a keyboard, mouse, and monitor, insert the SD Card, and the USB Stick with AlmaLinux on it, then plug in power. After a moment you will see a Raspberry Pi logo, and the Pi will boot from the USB stick. The AlmaLinux installation process will begin, and if you are familiar with the CentOS installation process you will notice it’s nearly identical, since the upstream sources are the same.
The Raspberry Pi is not as fast as a PC, or a large Arm Server, so you’ll need to be patient while the installation wizard loads and navigating the menus can be a bit slow. However, you will be able to setup a user account, choose your timezone, and select the destination drive to install to (the SSD). Once satisfied, you can begin the installation, and again you’ll need to be patient while the files are copied to the SSD. Make some coffee or tea.
Once the process does complete, you can reboot the Pi, remove the USB stick so you don’t start the whole process over, and eventually boot into your new AlmaLinux 8.4 for Arm distro!