Info: Upgrading from Stretch (9) to Buster (10)
I was still running my Neuron M103 on Raspbian 9 and I wanted to upgrade now.
As my heating is attached to the Neuron I did not want to have days of troubleshooting. It should be running fine after the upgrade.
So I checked Debian to see what to do for such an upgrade. In short:
- Check package status
- Check additional repositories (like unipi)
sources.listand files in
sources.list.dto match buster
In the end it worked smooth. Some minor issues (there were two
mervissymlinks pointing to each other in
/etc/nginx/sites-enabled. Simply deleted them).
I just had one major issue which in the end took me hours to resolve:
/boot- partition has been only 50M as this was the early default when I installed it initially. The upgrade did fail because of not having enough disk space there. Initially I expected this to be an easy step to increase partition size but it wasn't.
- Shutdown my Neuron and removed the SD disk (32G)
- Plugged-in my SD to a Debian computer, there installed as /dev/sda
- Took image backup of both partitions
dd if=/dev/sda1 of=/srv/neuron.sda1.img
dd if=/dev/sda1 of=/srv/neuron.sda2.img
fdisk /dev/sdato remove the partitions and recreate
sda1with a size of 500M which obviously moved the start of sda2. Created sda2 with a size a little bit smaller than it has been before.
mkfs.vfat(had to be installed through
apt install dosfstools)
Note: Simply resizing did not work as
partedneither Windows are able to handle such small FAT32 partitions. So format from scratch and copy existing files over:
rsnyc -av /mnt/old.boot/ /mnt/new.boot
- Resize the image of sda2 as it is larger than the new size of sda2 (could have done before on the device, though):
e2fsck -f ./neuron.sda2.img; resize2fs ./neuron.sda2.img 20G
- Bring back the smaller image:
dd if=neuron.sda2.img of=/dev/sda2
Note: It complained about "no more space on device" which is expected but does not harm as there is no data on the missing bits.
- Resize the filesystem now to match the (new) partition size:
umountand unplug the SD from Linux, plug it into the Neuron and power on.
Worked fine and once the partition issues have been solved the
apt full-upgradesteps went smooth.
Now my Neuron is running fine on Raspbian 10. I just had to recompile my own application as there was a version mismatch with one of the used libraries.
Thanks for this post, it's very helpful.