Bald ist es soweit, nur noch wenige Tage trennen uns von der Veröffentlichung der stabilen Ausgabe von Debian 13 »Trixie«. Dieses Release stellt einen weiteren Meilenstein in der Entwicklung von Debian dar und bringt aktualisierte Software, verbesserte Hardware-Unterstützung, erweiterte Sicherheitsfunktionen und modernisierte Systemkomponenten zu den Anwendern. Wenn du im Vorfeld noch mehr darüber erfahren möchtest, wie für die Entwickler der Ablauf der Umstellung von »Bookworm« auf »Trixie« vonstattengeht, dann schau in unseren Artikel Wie kommt ein Debian-Release zustande?
Im Gegensatz zu Ubuntu verlaufen Versions-Upgrades bei Debian üblicherweise ohne Probleme. Trotzdem solltet ihr einige Vorbereitungen ins Auge fassen, um möglichen Problemen aus dem Weg zu gehen. Diese Anleitung wurde aus den weitaus detaillierteren Release Notes und Informationen aus dem Debian-Wiki zusammengestellt.
Backup
Backups des Home-Verzeichnisses sollten im Alltag selbstverständlich sein. Vor einem System-Upgrade ist es zusätzlich durchaus sinnvoll, die unter /etc befindliche Systemkonfiguration zu sichern. Dazu dient der Befehl:
sudo tar -cvpzf /home/etc-backup/etc-backup_$(date +%Y-%m-%d).tar.gz /etc
Er erstellt ein komprimiertes Backup des kompletten Verzeichnisses /etc und legt es als gzip-komprimiertes tar-Archiv im vorher zu erstellenden Verzeichnis /home/etc-backup ab. Wenn du zusätzlich die Liste der vor dem Upgrade installierten Pakete sichern möchtest, erreichst du das mit:
dpkg --get-selections > package-selections-$(date +%Y%m%d).txt
Der Befehl exportiert den aktuellen Paket-Installationsstatus in eine datumsmarkierte Datei im Verzeichnis in deinem /home zur späteren Verwendung.
Als Nächstes solltest du die Quellenliste sichern:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bookworm-backup
Falls du schon auf sources.list.d umgestellt habt, sicherst du die Dateien darin mit:
sudo cp -r /etc/apt/sources.list.d /etc/apt/sources.list.bookworm-backup
Damit wird eine Sicherungskopie des APT-Quellen-Verzeichnisses sources.list bzw. sources.list.d unter dem Namen sources.list.bookworm-backup in /etc/apt abgelegt.
Aktualisieren und Aufräumen
Vor dem Upgrade sollte sichergestellt werden, dass Debian 12 auf dem aktuellsten Stand ist. Dazu dient der Befehl:
sudo apt update && sudo apt full-upgrade
Anschließend hilft ein
sudo apt clean
gefolgt von
sudo apt autoremove
beim Aufräumen des Systems.
Ausreichend Platz?
Ist genug Platz in der Root-Partition vorhanden? Es sollten mindestens 5 GB freier Platz für das Upgrade vorhanden sein. Das überprüfst du mit df -h.
Die Ausgabe könnte so aussehen:
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
udev 31G 0 31G 0% /dev
tmpfs 6,2G 2,6M 6,2G 1% /run
efivarfs 128K 60K 64K 49% /sys/firmware/efi/efivars
/dev/nvme0n1p2 426G 234G 171G 58% /
tmpfs 31G 415M 31G 2% /dev/shm
tmpfs 5,0M 24K 5,0M 1% /run/lock
tmpfs 31G 464M 31G 2% /tmp
/dev/nvme0n1p1 300M 175M 126M 59% /boot/efi
tmpfs 6,2G 17M 6,2G 1% /run/user/1000
tmpfs 1,0M 0 1,0M 0% /run/credentials/systemd-journald.service
Wichtig ist die Zeile, die unter der Spalte Eingehängt auf lediglich / anzeigt.
Nun können die Quellen auf Trixie umgestellt werden. Bei Verwendung der ursprünglichen sources.list erreichst du das mit:
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
Falls das System bereits auf das Verzeichnis /sources.list.d umgestellt wurde, nimmst du:
find /etc/apt/sources.list.d -name "*.list" -exec sed -i 's/bookworm/trixie/g' {} \;
Vor dem Upgrade sollten Quellen aus dritter Hand vorsichtshalber mit einer Raute (#) davor auskommentiert werden. So wird sichergestellt, dass eventuell mit Trixie (noch) inkompatible Quellen das Upgrade nicht stören.
Auf Debian 13 aktualisieren
Ein darauffolgendes
sudo apt update
aktualisiert den Paketstatus auf die neuen Quellen.

Das eigentliche Upgrade auf Debian 13 »Trixie« erfolgt dann in zwei Schritten. Zunächst wird der bereits vorhandene Paketbestand aktualisiert:
sudo apt upgrade --without-new-pkgs
Um potenzielle Probleme im Vorfeld zu erkennen, kannst du den zweiten Teil zunächst simulieren:
sudo apt full-upgrade -s
Wenn das gut aussieht, kannst du das Upgrade durchführen:
sudo apt full-upgrade
Das sieht dann etwa so aus:

Dabei werden neue Pakete installiert und nicht mehr benötigte entfernt. Zudem können bei beiden Upgrades Anpassungen der Konfigurationsdateien in /etc anstehen, die das Upgrade unterbrechen und dich zu einer Entscheidung zwingen. Dabei ist Vorsicht geboten: Du wirst dann gefragt, ob du bestehende Konfigurationsdateien mit einer neuen Version überschreiben möchtest. Dabei ist es wichtig, nicht automatisch mit der Entertaste »ja« zu sagen, ohne vorher die Unterschiede (diff) zu überprüfen. Das Überschreiben ohne Überprüfung wird deine eventuell angepassten Einstellungen auf die Standardwerte zurücksetzen, was du vermutlich in den seltensten Fällen willst.
Im Nachgang schaust du nach, ob du auch wirklich bei Trixie angekommen bist:
cat /etc/debian_version
Alles ist Trixie
Da sollte jetzt 13.0 angezeigt werden. Falls du dich wunderst, warum cat /etc/os-release oder lsb_release -a auch nach dem Upgrade noch Debian 12 anzeigen, so ist die Erklärung ganz einfach: Sie zeigen stets die ursprünglich installierte Version an. Wenn du noch auf einer älteren Veröffentlichung wie Debian 11 bist, dann erfolgt zunächst das Upgrade auf Debian 12, dann erst auf 13.
deb822
Mit Debian 13 erfolgt, wie wir bereits im Vorfeld berichtet haben, die Umstellung auf das deb822-Format als neuen Standard für die Verwaltung der APT-Paketquellen. Dafür stellt uns Debian den Befehl
sudo apt modernize-sources
bereit, der nach dem Upgrade für die Umstellung sorgt.

Falls du Quellen aus dritter Hand vor dem Upgrade auskommentiert hast, kannst du diese Quellen vor der Umstellung wieder aktivieren. Debian wird manche davon umstellen können, bei anderen wird Handarbeit angesagt sein. Die Umstellung kann durch die Eingabe von N simuliert werden.
Bei der Umstellung wird die ursprüngliche sources.list in das neue Format unter sources.list.d überführt. Die dort liegenden Dateien enden nicht mehr auf .list, sondern auf .sources.

Das sieht dann etwas aufgeräumter aus als vorher:

Verschlüsselte Partitionen
Verschlüsselte Partitionen, die mit dm-crypt erstellt wurden, bedürfen deiner Aufmerksamkeit. Einzelheiten dazu bieten die Release Notes in der Sektion Known Issues.
Ansible
Das alles kannst du, wenn du mehrere Rechner gleichzeitig aktualisieren möchtest, auch per Ansible erledigen.
Damit wären die Vorarbeiten, das Upgrade selbst sowie einige Arbeiten im Nachgang erledigt. Bei uns lief das einwandfrei ohne Fehler oder Hänger durch. Ich hoffe, das wird bei euch am Sonntag oder wann immer ihr das Upgrade durchführt, genauso sein. Auf gutes Gelingen!

Ich hatte einen Rechner in der Source List stable stehen, warum auch immer immer, der hat sich sauber auf Trixi aktualsiert. Läuft. Meine Virtuellen Maschinen haben ich ich jetzt zweimal auf Trixi gebracht, einmal schön von Hand, die zweite mit einen kleinen Script. Werde das ein paar Tage bebachten und dann meine beiden “Server” auf Trixi bringen. Bis auf Dovecot und Postfix habe ich keine Probleme wo ich nacharbeiten muß
J
Habe nun 9 Server aktualisiert und bin über mehrere Probleme gestolpert:
– Nach reboot kein LAN mehr -> 1x Half ein erneuter reboot, 1x hat sich der Name der NIC geändert und ich musste sie neu konfigurieren in /etc/network/interfaces
– Nextcloud läuft nicht mehr -> php8.2-fpm war aktiv und ich musste php8.4-fpm aktivieren
– IPv4 routing geht nicht mehr da es die Datei “/etc/sysctl.conf” nicht mehr gibt -> “echo “net.ipv4.ip_forward=1″ > /etc/sysctl.d/ipv4fwd.conf”
Ach und auf Apache2 kann nicht mehr via IP zugegriffen werden, es kommt ein SNI-Error (via DNS geht es). Dafür habe ich leider noch keine Lösung gefunden. 🙁
Zunächst vielen Dank für die ausführliche Zusammenstellung. Aber, irgendwie finde ich schon, dass es Linux im Jahre 2025 verdient hätte, dass die Installation schlicht und einfacher viel viel simpler wäre, und zwar auch beim Update eines bestehendes Systems. Eine solche Liste wie oben ist nicht unbedingt geeignet, “Neulinge” zu überzeugen, ein Linux-System aufzusetzen.
Und ja ich weiss schon, dass hier ganz viel Herzblut dahinter steckt, bei Debian, bei dieser Anleitung, aber irgendwie wünschte ich mir, dass es bei den verbreiteteren Distributionen schon irgendwie einfacher ginge. Das ist nur ein “Wunsch”, nicht mehr und nicht weniger. Und ich meinte gar, Wünsche zu haben, gehört zu einem erfüllten Leben. In diesem Sinne, es ist ein Wunsch und keine Einleitung zum Disput.
Bei Ubuntu gehen die System-Upgrades oft in die Hose. Ich denke, es ist besser, vorher etwas Vorsicht walten zu lassen, als hinterher reparieren zu müssen. Ich erkenne den Einwand mit den neuen Usern an, der ist real. Aber die dürfen gerne bei Ubuntu anfangen und dann, wenn sie was können, zu Debian kommen 🙂
Ich aktualisiere immer zuerst apt und dann den Rest der Welt..
apt install apt && apt upgrade && apt dist-upgrade
Das ergibt keinen Sinn.
Das ergibt sehr viel Sinn.
apt install apt? Seitwann das?
Es ist nicht so das man das nicht kann, aber das erledigt apt upgrade sowieso schon automatisch, BEVOR man auf die nächste Version wechselt.
Ich tendiere auch zur Neuinstallation. Dann räumt man die einoder andere Altlast mit weg die man mal schnell isntalliert hat und dann doch nie (länger) gebraucht hat. Und da ich meist eine Version überspringe ist das auch sicherer.
In den Jahren hat sich bei mir eine Skriptsammlung angehäuft, daß den Großteil der Installation ohenhin automatisch erledigt. Muß nur selten angepaßt werden (wie jetzt beispielweise bei deb822). Könnte man auch in ein Offizeilles Deploy-Tool übertragen, aber dafür bin ich zu faul.
Aufgrund einen zeitlich ungünstigen Hardwareausfall meiner Serverhardware mußte ich letzte Woche ohenhin schon auf Trixie updaten. Laufe also auf meinem (privat) produktiven Server seit ca 11 Tagen auf Trixie uns es ist bisher sehr stabil.
Ich aktualisiere nicht, sondern setze neu auf. Früher hatte ich immer zwei Partitionen auf dem Laptop so daß es immer einen Weg zurück gab. Jetzt steige ich von Tuxedo OS auf Debian um nachdem dieses mehrere Jahre dort zuverlässig Dienst getan hatte. Das neue System wird Debian 13 sein – ich werde das in der bewährten Art wieder so machen: Neues System neben dem alten installieren.
Das letzte Debian, was ich komplett neu aufgesetzt habe, war Debian 8 ak Jessie, irgend wann in der 2. Hälfte 2015.
Es läuft einfach. Auch nach dem 2-maligen Umzug, jeweils auf einen neueren Rechner.
Wir hatten die Diskussion ja erst jüngst hier bzgl. Neuinstallation und Upgraden.
Aus meiner Sicht verstehe ich nicht, und gerade unter Linux, explizit Debian, warum ich mir einen der großen Vorteile nehmen sollte. Unter Windows muss ich oftmals neu installieren. Linux macht da einen viel besseren Job.
Mein letzter Rechner lief ca. 9 Jahre ohne Neuinstallation. Danach in HW Rente😁.
Was wäre, wenn Stefan hier immer den Server neu aufsetzen würde oder sogar müsste!
Aber jeder hat da so seine eigene Präferenz.
Ich freue mich auf Trixie und sag vielen Dank für die tolle Zusammenfassung, die super hilfreich ist.
Ich könnte gar nicht neu aufsetzen. Bis all meine Sachen wieder laufen würde es Wochen dauern… 🙈
Ich denke, man könnte viel durch Backup, Configs sichern, etc. das System wieder schnell herstellen, aber die Frage ist halt: Wozu neu aufsetzen, wenn ein Upgrade alles erfüllt! Bei Windows ist das manches Mal sinnvoller, weil es dann nicht anders geht. Linux hat da mMn einen mega Vorteil und das ist auch ein Grund, warum ich mich vor ca. 25 Jahren dafür entschieden habe. Für mich ist die Rechnung bis heute damit aufgegangen.
Unabhängig von Debian, denn ich persönlich benutze schon so lange es das gibt Mageia:
Ich sehe das aber genau so – und nicht anders.
Eine Neuinstallation ist nur dann eine Option, wenn es massive Hardwareprobleme, wie etwa der Ausfall einer Festplatte, gibt.
Ich erstelle jeweils vor dem Update einen kompletten dump der Systempartition:
dump -0uf /pfad/zu/backup.dump /dev/mdX
Wichtig ist das der dump auf eine andere Partition gemacht wird.
Damit kann man dann einen FullRestore machen oder auch einzelne Dateien daraus wieder herstellen.
Macht das sonst noch jemand so?
Eine schöne Übersicht über den Ablauf; gefällt mir gut.
Zu dem neuen .sources Format hätte ich mal eine Nachfrage:
Man kann ja auf den Pfad zu dem Signing Key verweisen oder den Key direkt in the Datei mit einbinden wie schon vorher in anderen Beträgen hier gezeigt wurde. Welche Methode ist da denn eigentlich sicherer? Den Key separat in dem keyrings Ordner haben oder direkt in die .sources Datei einbinden? Oder spielt das keine Rolle?
Ich sehe sicherheitstechnisch keinen Unterschied, denn beide Dateien/Verzeichnisse stehen auf 755(rwxr-xr-x).
Beim posten meiner debian.sources ist wohl etwas schief gegangen …
Meine /etc/apt/sources.list.d/ debian.sources sieht so aus:
Types: deb deb-src
URIs: https://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main contrib non-free non-free-firmware
Enabled: yes
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb deb-src
URIs: http://security.debian.org/debian-security
Suites: trixie-security
Components: contrib main non-free non-free-firmware
Enabled: yes
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: trixie-backports
Components: contrib main non-free non-free-firmware
Enabled: yes
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Wenn man nicht selbst kompilieren will, braucht man kein deb-src, das kostet nur unnötig Bandbreite.
Und die Backports immer aktiviert zu haben, würde ich mir sehr genau überlegen…
Hallo!
Das .list müsste .sources heißen:
find /etc/apt/sources.list.d -name “*.list” -exec sed -i ‘s/bookworm/trixie/g’ {} \;
Jedenfalls bei mir.
Dann hast du irgendwann auf sources.list.d umgestellt. Mein original Bookworm hatte nur sources.list.
Vielen lieben Dank für diese Zusammenstellung.
Das wird für viele User sehr nützlich sein.