In this article I will show you how to upgrade your Raspberry Pi Buster to Bullseye Linux 11, which is the latest and greatest OS version.
Table of Contents
Why to upgrade Raspberry Pi Buster to Bullseye?
Raspberry Pi OS is based on Debian linux, and the current one is based on Debian 10 with code name Buster. However, since several months there is a new stable Debian 11 version called Bullseye. That means it is expected the Raspberry Pi OS to follow this update sooner or later.
Regardless that Raspberry Pi org is still not updating their official image, there is a way to upgrade your installation, on top it is not hard at all.
On top, If you are running Home Assistant Supervised installation like me, you will be just fine when they completely remove the support for Debian 10.
So, let’s upgrade a Raspberry Pi Buster to Bullseye together!
What kind of Raspberry Pi is needed?
I’m going to use Raspberry Pi 4, but you can use the same procedure for Raspberry Pi 400 (Check this article of mine if you want more info about Raspberry Pi 400) and I believe it will also work for Raspberry Pi 3.
QUESTION: Let me know in the comments what is your Raspberry and if the Raspberry Pi Buster to Bullseye upgrade is working fine!
If you want to buy a Raspberry Pi you can use my affiliate link below:
- Raspberry Pi 4 4GB Starter Kit with 32GB Micro SD Card – https://amzn.to/3qaI5qN
Backup your Raspberry Pi before Raspberry Pi Buster to Bullseye upgrade
Before continuing further, your first step is to backup your current Raspberry OS in case something goes totally wrong. There are several ways to do this.
For example:
- If you are using a SD card, just clone it on another SD card or other drive.
- If you are booting your Raspberry Pi from USB hard drive or SSD drive, then you can use a script like the examples that I listed below:
- rpi-backup-script – https://github.com/damoclark/rpi-backup-script
- rpi-clone – https://github.com/billw2/rpi-clone
If you have other way to backup, use it now, but please do not skip this as it is the most important step.
How to connect to Raspberry Pi remotely with SSH?
I will connect to my Raspberry PI remotely over SSH using the following command
ssh pi@IP_OF_YOUR_RASPBERRY
Or you can open a Terminal if you are inside the Raspberry Pi OS.
Updating the Raspberry Pi OS Buster
Regardless the Pi model and remote connection or not, let’s upgrade all packages before changing the version to Bullseye.
sudo apt update
While executing the above command you might see a message saying that the version has changed from stable to oldstable.
In this case, it is necessary to accept the change by running the following command:
sudo apt update --allow-releaseinfo-change
Before switching to Bullseye, I will update my packages in Raspberry Pi Buster OS, to their latest possible versions. That way, a relatively very few packages will have to be updated later on.
sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get full-upgrade
During the process you may see a screen with a changelog, to close it type q
and it will continue.
If you get questions wether to keep the existing versions of some config files. I can recommend to say yes, and to keep your existing configurations versions. That way you will avoid losing your customisations.
First Raspberry Pi reboot
After everything above is finished a system reboot is required. Type the following command:
sudo reboot
Wait for the Raspberry Pi to start and log in again using ssh or open a Terminal.
Update Raspberry Pi package list
Time to start the actual Raspberry Pi OS Bullseye 11 upgrade. The first step here is to change the source list to use Bullseye instead of Buster. Use a text editor like nano to edit this:
sudo nano /etc/apt/sources.list
The only thing that you have to change in this file is the buster keyword with bullseye, so at the end you should have similar line in your sources.list
file:
deb http://raspbian.raspberrypi.org/raspbian/ bullseye main contrib non-free rpi
TIP!: It is highly recommended to double check your other lists in /etc/apt/sources.list.d/
folder and replace “buster” with “bullseye” keyword in every list you have there.
Actual upgrade of Raspberry Pi Buster to Bullseye 11
Now, I just have to repeat the same commands as before! That is to update the package list and to upgrade the packages, but this time to Bullseye:
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get full-upgrade
At some point, it is quite possible to see a question asking you to allow restarting the Raspberry PI OS services during the upgrade. If you choose YES you will be not asked again for this, otherwise it will ask you multiple times for many of the running services on your Raspberry.
One final reboot and if everything is fine I should have Raspberry PI OS Bullseye based on Debian 11 up and running
sudo reboot
How to check if you are Running Raspberry Pi OS Bullseye 11?
To double check if you are really running the Raspberry PI OS Bullseye 11, execute the following command.
cat /etc/os-release
If you see bullseye in your answer then you are completely ready!
And just like that my Raspberry Pi Buster to Bullseye upgrade is complete. I have an up to date Raspberry PI running Raspberry PI OS Bullseye 11.
Now I’m not concerned about the old Buster 10 version deprecation.
Outro
if you wish to secure this channel existence check the support options in this section 👉 LINK.
Join my Discord 👉 https://invite.gg/kpeyanski , follow me on Twitter 👉 https://twitter.com/kpeyanski
Remember – Home Smart, But Not Hard!
I’m Kiril and I’m done writing. Bye!
Thanks much for these easy steps to perform the upgrade.
Happy to help! Enjoy!