Raspberry Pi Stretch to Buster Missing Steps

I recently went through the process of upgrading my raspberry Pis from Stretch to Buster. I had previously done this moving from Jessie.

Whilst I had no real issues with task following the guides that I found. I did discover one thing that concerned me, and was missing from the guides.

After upgrading to Buster, my /boot had less than 200kb of free storage.

I did some reading and found that Buster seems to need a lot more space in /boot than for previous releases. Buster itself now defaults to 256M of space for /boot

So I went about solving this issue.

I would suggest that you do these steps before upgrading just to avoid any possible problems.

Warning!

This action does have the potential to cause data loss. You should backup your data onto another device. Use a tool such as etcher to make a block copy of your disk.

What you will need

  • A spare Linux machine with gui interface.
    • Alternatively, if you have a spare SD card, you can install Buster or Stretch on to that and boot from it. Then use the original hardware to update the previously exiting card.
  • USB card reader.
  • monitor, keyboard and mouse
  • gparted installed.

The steps

These are the basic steps that will need to be followed.

  1. Shrink the rootfs and run check
  2. Move rootfs to the right using the mouse to drag it to the right, and run check (this will take some time)
  3. Expand /boot partition to 256M and run check
  • There could be issues with this last step. We will cover them later.

Getting situated

If you have spare linux machine. Set it up and getting it running with the SD card reader attached.

If you don’t have a spare machine, but have a spare SD card. Install your preferred linux distro. Shutdown the existing server and then swap out the old SD card for the new and get it running with all the required attached devices.

If it does not boot up into x-windows by default, login and then issue the command startx. If you have issues, then use sudo to execute as root. Launch gparted either using a terminal or through the drop down menu system. If gparted is not installed. Open a terminal and issue the following commands.

apt update
apt install gparted

Insert the old SD card in to the reader and give gparted a few moments to scan the devices. Be careful here. We want to make sure that we are working with the correct device and not the SD card we are booting from. So make sure to select the correct /dev device. It should be mounted on the system as /media/XXX

Rather than rewrite something that has been covered on other sites. I would direct you to the sites below.

https://learn.adafruit.com/resizing-raspberry-pi-boot-partition/edit-partitions

https://bugzilla.gnome.org/show_bug.cgi?id=649324