How to Upgrade to Debian 13 from Debian 12

4 min


Here’s how you can upgrade to Debian 13 “Trixie” from Debian 12 “Bookworm”.

Debian 13 “Trixie” is released on August 9, 2025 with many new features and updates. If you are running Debian 12 “bookworm”, you can plan to upgrade your desktop or server now. However, it is recommended that you wait until the first point release, i.e. 13.1 of Debian Trixie, for critical server upgrades.

That said, if you want to check out the cool features of Debian 13, read through our feature guide here.

Here are the detailed steps to upgrade.

Upgrade to Debian 13 from Debian 12

Pre-requisite

  • Whether you are running a Debian server or any desktop version, make sure to take backups of critical data. For example, you might want to take backups of your documents for a desktop. If it is a server, keep a note of the services you are running.
  • Debian 13 continues to use the “non-free-firmware” repo for proprietary drivers and packages. If you are using any “closed-source” network, display, graphics or any other drivers, you may need to verify or reconfigure them after the upgrade.
  • For network drivers, make sure to note down the content of the /etc/network/interfaces and /etc/resolv.conf files somewhere safe. If you lose the network connection after the upgrade is complete, you can set it up easily by following the official guide.

Critical: Debian 13 is dropping many obsolete packages. If you are using container images of Debian 12, ensure all the pre-installed container packages are well-supported in Debian 13. Avoid upgrading to Debian 13 for any confusions.

Upgrade steps

  • From the command prompt, run the following command to make sure Debian 12 is up-to-date with security and other packages.
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt autoremove
  • Once the above commands are complete, reboot the Debian 12 system.
sudo systemctl reboot
  • Note down a few pieces of information about Debian 12. This is important for servers. These include the Kernel version and the Debian version. The reason is you can verify the same commands below after the upgrade whether the upgrade is successful.
  • For example, the system I am trying to upgrade might be Debian 12. Something, and Kernel is 6.1 or similar.
uname -mr

Example output:

6.1.0-38-amd64 x86_64
cat /etc/debian_version

Example output:

12.11
  • Take backups of the APT source file to any directory of your choice.
sudo cp -v /etc/apt/sources.list /home/arindam/
sudo cp -vr /etc/apt/sources.list.d/ /home/arindam/
  • Open the /etc/apt/sources.list file and add the Debian 13 “trixie” code name by replacing “bookworm“.
sudo nano /etc/apt/sources.list
  • Here’s the file before the changes in a typical system for your reference (assuming default setup with non-free-firmware).
deb http://deb.debian.org/debian/ bookworm main non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm main non-free-firmware

deb http://security.debian.org/debian-security bookworm-security main non-free-firmware
deb-src http://security.debian.org/debian-security bookworm-security main non-free-firmware

deb http://deb.debian.org/debian/ bookworm-updates main non-free-firmware
deb-src http://deb.debian.org/debian/ bookworm-updates main non-free-firmware
Debian 13 - before upgrade source list
Debian 13 – before upgrade source list
  • Here’s the file after the changes. The mirror URLs below are for default settings. If you are using a different Debian mirror, keep those unchanged.
deb http://deb.debian.org/debian/ trixie main non-free-firmware
deb-src http://deb.debian.org/debian/ trixie main non-free-firmware

deb http://security.debian.org/debian-security trixie-security main non-free-firmware
deb-src http://security.debian.org/debian-security trixie-security main non-free-firmware

deb http://deb.debian.org/debian/ trixie-updates main non-free-firmware
deb-src http://deb.debian.org/debian/ trixie-updates main non-free-firmware
Debian 13 - after source list
Debian 13 – upgrade source list

Note: Debian 13 Trixie maintains the non-free-firmware repo structure introduced in previous releases, so ensure it’s included as shown.

  • Save the file and exit.
  • Open the terminal and run the following command to start the upgrade process.
sudo apt update
  • As of the default installation, there would be ~1053 files to be upgraded.
  • If you want to view the obsolete packages, you may run the below command to view them. It is recommended to remove obsolete packages befor upgrade.
apt list '~o'
View obsolete packages
View obsolete packages
  • Once you are ready, run the below command to start the upgrade process.
sudo apt full-upgrade
Starting the Debian 13 upgrade process
Starting the Debian 13 upgrade process
Upgrade in progress
Upgrade in progress
Auto restart services
Auto restart services
  • During the upgrade, the installer might ask you about several services being restarted. Hit yes after carefully reading the messages. Also, if you see any prompts with “:”, hit “q” to quit the message.
  • Wait for the download and installation of the packages.
  • After the upgrade is complete, reboot your Debian desktop or server.
sudo systemctl reboot

Check the upgrade status

After reboot, verify whether you are running Debian 13. You can check the Debian version using the following file.

cat /etc/debian_version

Example output:

13.0

Post upgrade
Post upgrade
  • Also, if you have just upgraded to a Debian 13 server, make sure to verify services running, such as HTTP, ssh and so on. You can use the below systemd command to learn about the services running.
systemctl list-units --type=service

Conclusion and cleaning up

After you verified all the steps are complete, you may want to run apt autoremove to clean up unwanted packages. But be careful while doing it.

sudo apt --purge autoremove

So, that’s the brief set of steps to upgrade to Debian 13. I hope your upgrade goes smoothly. If you are running Debian 12 on a critical server, do not upgrade now. Wait for the Debian 13.1 release.

For more information about the Debian upgrade, visit the official documentation.

Finally, don’t forget to let us know how your upgrade went.

For complex upgrades and further information, refer to the official upgrade notes for this release.


Arindam

Creator and author of debugpoint.com. Connect with me via Telegram, 𝕏 (Twitter), or send us an email.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 Comment
Newest
Oldest Most Voted
Inline Feedbacks
View all comments