Managing Raspberry Pi images
Creating SD cards
There is a Windows program that some people use but I only use the Raspberry Pi imager, or sometimes Balena Etcher.
Copy IMG
Mick warns that pi-shrink is unreliable. Here it is all the same.
https://www.instructables.com/How-to-BackUp-and-Shrink-Your-Raspberry-Pi-Image/
I did this on Bellman and worked there I think. I think. Did I make notes?
sudo apt install dcfldd gparted
Building new images
pi-gen is what the Raspberry Pi folk use. See /boot/issue.txt on a standard image. For example,
Raspberry Pi reference 2023-12-11 Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 2acf7afcba7d11500313a7b93bb55a2aae20b2d6, stage2
I have to run pi-gen on an x64 computer; I tried on a Pi5 and it would not run. I use the Docker version. I use Murre as my build machine, and I run an apt cache on Bellman to speed up repeated builds. I set up a pi-gen folder (on both Murre and Bellman).
You have to download pi-gen and you have to install the apt package "qemu-user-static" so that you can build arm64 images. You probably only need qemu on the builder not the cacher.
cd ~/Documents/Projects/TARRA git clone https://github.com/RPI-Distro/pi-gen.git cd pi-gen
In the "config" file on each machine I added "APT_PROXY=http://192.168.123.2:3142"; this tells the copy on Bellman to be a cache when I run "docker compose up -d" and it tells the builder on Murre to use Bellman as the cache. This means I can run a cache on the server and build on the fast machine, or I can build on Bellman remotely.
On the "builder" then in the pi-gen folder, I run "./builder-docker.sh" and wait. Eventually I get an img file in the deploy/ folder. From the console then I can burn the image using the Raspberry Pi imager to an SD Card or an NVME drive.