Sunday, October 3, 2021

Applying updates

Marks Rpi Cluster continues to run 24/7. At the time of writing the cluster consists of:

4 x Pi3 as compute nodes
3 x Pi4 (2GB) as support nodes
9 x Pi4 (8GB) as compute nodes


Applying updates
Yesterday we got a bunch of updates that needed a reboot. Usually that is the kernel and/or bootloader. Most Linux updates don't require a reboot.

With the Pi3's I can simply stop the BOINC client, apply the updates and reboot when done. With the Pi4's I finish off any work they have running and then apply the updates. The Pi4's are running Rosetta@home which has work units that don't like to be interrupted.

Assuming the need for a reboot my usual command to update a Pi, after I have ssh'ed into each one, is:

sudo systemctl stop boinc-client && sudo apt update && sudo apt upgrade -y && sync && sudo reboot

It is actually 5 separate commands. The && separates each one.
  1. The systemctl command tells the boinc-client (daemon) to stop.

  2. The apt update tells apt to update its list of available packages.

  3. The apt upgrade tells apt to download and install any available updates.

  4. The sync command tells the system to make sure everything is written to the micro SD card (or hard disk or SSD if you are using one). Its always a good idea to do this just before a reboot to prevent the SD card getting corrupted.

  5. The final command tells the Pi to reboot.

These commands work on the original Pi through to the Pi4 and it doesn't matter if its running the 32 or 64 bit version of Raspberry Pi OS.


Update: 10th of October
Debian did a point release so there is a bunch of important fixes again this week.

We're still waiting on the Raspberry Pi foundation to move to a Debian Bullseye code base. At the moment Raspberry Pi OS is based on the previous version of Debian known as Buster.