In this week’s feature highlight, we look at How to Upgrade Debian 11 to Debian 12
It is important to backup all your data before proceeding with the upgrade so that you can always revert to the previous version if anything goes wrong during the upgrade.
Upgrade all your existing packages
Upgrade all your existing packages. Use the following code to upgrade the packages.
apt update && apt upgrade -y
Modify package repository
Before you change anything, make sure to create a backup,
cp -v /etc/apt/sources.list /opt/sources.list-bakup-debian11
root@vps:~# cp -v /etc/apt/sources.list /opt/sources.list-bakup-debian11 '/etc/apt/sources.list' -> '/opt/sources.list-bakup-debian11'
Now use sed commands to replace the text ‘bullseye’ with ‘bookworm’ in the package repository file
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
Now, you need to update the packages to apply changes.
root@vps:~# apt update Get:1 http://deb.debian.org/debian bookworm InRelease [147 kB] Get:2 http://deb.debian.org/debian bookworm-updates InRelease [52.1 kB] Get:3 http://security.debian.org/debian-security bookworm-security InRelease [48.0 kB] Get:4 http://deb.debian.org/debian bookworm/main Sources [9,628 kB] Get:5 http://deb.debian.org/debian bookworm/main amd64 Packages [8,904 kB]
Before starting the upgrade, let’s verify the current version using the following command,
root@vps:~# cat /etc/os-release
root@vps:~# cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 11 (bullseye)" NAME="Debian GNU/Linux" VERSION_ID="11" VERSION="11 (bullseye)" VERSION_CODENAME=bullseye ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"
Upgrade to Debian 12
Run the update command,
apt update -y
This might take a long time to complete due to the number of packges involved in this process!
Once all the packages are updated in your system, then upgrade your distribution packages,
apt dist-upgrade -y
Processing triggers for man-db (2.11.2-2) ... Processing triggers for libc-bin (2.36-9) ... Errors were encountered while processing: dbus-daemon dbus-user-session dbus libpam-systemd:amd64 E: Sub-process /usr/bin/dpkg returned an error code (1)
During this if any client gets this error, then ask the client to run the below 3 commands and it will be fixed,
/usr/bin/dbus-uuidgen > /etc/machine-id dbus-uuidgen >/var/lib/dbus/machine-id apt update apt dist-upgrade
root@vps:~# apt dist-upgrade Reading package lists... Done Building dependency tree... Done Reading state information... Done Calculating upgrade... Done The following packages were automatically installed and are no longer required: libcbor0 libicu67 libldap-2.4-2 libmpdec3 libperl5.32 libpython3.9-minimal libpython3.9-stdlib liburing1 libusb-0.1-4 perl-modules-5.32 python3.9 python3.9-minimal telnet Use 'apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 4 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] y Setting up dbus-daemon (1.14.6-1) ... Setting up dbus (1.14.6-1) ... A reboot is required to replace the running dbus-daemon. Please reboot the system when convenient. dbus.service is a disabled or a static unit, not starting it. Setting up libpam-systemd:amd64 (252.6-1) ... Setting up dbus-user-session (1.14.6-1) ...
Now, Remove the unused packages using below command,
apt autoremove -y
Verify Debian 12 After Upgrade
Once the upgrade process is completed, reboot your machine and check the version.
root@vps:~# lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 12 (bookworm) Release: 12 Codename: bookworm
root@vps:~# cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 12 (bookworm)" NAME="Debian GNU/Linux" VERSION_ID="12" VERSION="12 (bookworm)" VERSION_CODENAME=bookworm ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"
Done! Your server is now running Debian 12!