5. Dinge, die Sie über trixie wissen sollten

Manchmal haben Änderungen, die in einer neuen Veröffentlichung eingebracht werden, Nebeneffekte, die wir ohne größeren Aufwand nicht vermeiden können, oder dies würde Fehler an anderen Stellen verursachen. Dieses Kapitel dokumentiert die uns bekannten Probleme. Bitte lesen Sie auch die Errata, die relevanten Paketdokumentationen, Fehlerberichte und weitere Informationen in Weitere Lektüre.

5.1. Upgrade-spezifische Themen für trixie

Dieser Abschnitt behandelt Themen, die für ein Upgrade von bookworm auf trixie relevant sind.

5.1.1. Eingeschränkter Support für i386

Beginnend mit Trixie wird i386 nicht mehr länger als reguläre Architektur unterstützt: es gibt keinen offiziellen Kernel für i386-Systeme mehr und keinen Debian-Installer. Auch existieren weniger Pakete als für andere Architekturen, weil viele Projekte i386 nicht mehr unterstützen. Der einzige Zweck von Debians i386-Architektur ist jetzt, es zu ermöglichen, alten Legacy-Code laufen zu lassen, zum Beispiel über Multiarch oder eine Chroot-Umgebung.

Benutzer, die noch i386-Systeme betreiben, sollten kein Upgrade auf Trixie durchführen. Stattdessen empfiehlt Debian, entweder das System - falls möglich - als amd64 neu zu installieren, oder die Hardware in den Ruhestand zu schicken. Cross-grading ohne eine Neuinstallation ist grundsätzlich eine technisch mögliche, aber riskante Alternative.

5.1.2. openssh-server liest nicht mehr ~/.pam_environment

Der Secure-Shell-Daemon (SSH) aus dem Paket openssh-server, der das Anmelden von einem fernen System erlaubt, liest standardmäßig nicht mehr die ~/.pam_environment-Datei des Benutzers ein; für diese Funktion existiert in der Vergangenheit eine Reihe von Sicherheitsproblemen, daher wurde sie in früheren Versionen der Pluggable-Authentication-Modules- (PAM)-Bibliothek bereits abgekündigt. Falls Sie diese Funktion benutzt haben, sollten Sie die Vorgehensweise, Variablen in ~/.pam_environment zu setzen, aufgeben und sie stattdessen in der Initialisierungsdatei Ihrer Shell (z.B. ~/.bash_profile oder ~/.bashrc) setzen, oder einen anderen ähnlichen Mechanismus verwenden.

Bereits existierende SSH-Verbindungen sind nicht betroffen, aber neue Verbindungen könnten sich nach dem Upgrade anders verhalten als bekannt. Falls Sie das Upgrade von fern durchführen, ist es üblicherweise eine gute Idee, vor dem Upgrade sicherzustellen, dass Sie eine zusätzliche alternative Möglichkeit zu haben, sich einloggen zu können; lesen Sie dazu auch Vorbereitungen für eine Systemwiederherstellung.

5.1.3. OpenSSH unterstützt keine DSA-Schlüssel mehr

DSA-Schlüssel (Digital Signature Algorithm) wie im Secure-Shell-Protokoll (SSH) spezifiziert, sind von sich aus schwach; sie sind auf 160-Bit lange private Schlüssel und auf den SHA-1-Digest beschränkt. Die SSH-Implementierung in den Paketen openssh-client und openssh-server hat die Unterstützung für DSA-Schlüssel in OpenSSH 7.0p1 in 2015 deaktiviert (in Zuge der Veröffentlichung von Debian 9 "Stretch"). Allerdings konnte sie mit den Konfigurationsoptionen HostKeyAlgorithms und PubkeyAcceptedAlgorithms (für den Host- bzw. den Benutzerschlüssel) immer noch aktiviert werden.

Der einzige verbleibende Zweck für die Verwendung von DSA sollte die Verbindung zu sehr alten Geräten sein. Für alle anderen Zwecke sind die anderen, von OpenSSH unterstützten Schlüsseltypen (RSA, ECDSA und Ed25519) vorzuziehen.

Ab OpenSSH 9.8p1 in Trixie werden DSA-Schlüssel auch mit den oben erwähnten Konfigurationsoptionen nicht mehr unterstützt. Wenn Sie ein Gerät haben, zu dem Sie sich nur mittels DSA verbinden können, müssen Sie dafür den Befehl ssh1 aus dem Paket openssh-client-ssh1 nutzen.

In dem unwahrscheinlichen Fall, dass Sie immer noch DSA-Schlüssel verwenden, um sich mit einem Debian-Server zu verbinden (wenn Sie sich unsicher sind, können Sie dies prüfen, indem Sie -v zum ssh-Befehl hinzufügen, mit dem Sie sich zu diesem Server verbinden; achten Sie dann auf die Zeile "Server accepts key:"), müssen Sie Ersatzschlüssel erzeugen, bevor Sie das Upgrade durchführen. Um z.B. einen neuen Ed25519-Schlüssel zu generieren und ihn für unterstützende Server zu aktivieren, führen Sie folgendes auf dem Client aus (ersetzen Sie dabei username@server mit den entsprechenden Benutzer- und Rechnernamen):

$ ssh-keygen -t ed25519
$ ssh-copy-id username@server

5.1.4. Die Befehle last, lastb und lastlog wurden ersetzt

Das util-linux-Paket stellt nicht länger die Befehle last und lastb bereit, und login enthält nicht länger lastlog. Über diese Befehle konnten vorherige Login-Versuche angezeigt werden. Sie haben dazu /var/log/wtmp, /var/log/btmp, /var/run/utmp oder /var/log/lastlog genutzt, aber diese Dateien sind nach 2038 nicht mehr nutzbar, da sie nicht genug Speicher zuweisen können, um die Login-Zeit zu speichern (das Jahr-2038-Problem), und die Originalentwickler wollen das Dateiformat nicht ändern. Die meisten Nutzer werden diese Befehle nicht durch irgendetwas ersetzen müssen, aber das Paket util-linux bietet den Befehl lslogins an, der anzeigt, wann Nutzerzugänge das letzte Mal genutzt wurden.

Es sind auch zwei direkte Ersatzbefehle verfügbar: last kann durch wtmpdb aus dem Paket wtmpdb ersetzt werden (das libpam-wtmpdb-Paket muss auch installiert sein) und lastlog können Sie durch lastlog2 aus dem Paket lastlog2 ersetzen (hier muss auch libpam-lastlog2 installiert sein). Falls Sie diese nutzen möchten, müssen Sie diese neuen Pakete nach dem Upgrade installieren; weitere Informationen finden Sie in util-linux NEWS.Debian. Der Befehl lslogins --failed stellt ähnliche Informationen wie lastb zur Verfügung.

Falls Sie wtmpdb nicht installieren, empfehlen wir, die alten Logdateien /var/log/wtmp* zu löschen. Wenn Sie wtmpdb allerdings installieren, wird /var/log/wtmp aktualisiert und Sie können ältere wtmp-Dateien mittels wtmpdb import -f <dest> lesen. Es gibt kein Werkzeug, um alte /var/log/lastlog*- oder /var/log/btmp*-Dateien zu lesen: sie können nach dem Upgrade daher gelöscht werden.

5.1.5. RabbitMQ unterstützt keine HA-Queues mehr

Hoch-verfügbare Queues (HA) werden beginnend mit Trixie von rabbitmq-server nicht mehr unterstützt. Um weiterhin ein HA-Setup nutzen zu können, müssen diese auf "Quorum-Queues" umgestellt werden.

Wenn Sie ein OpenStack-Deployment haben, stellen Sie bitte vor dem Upgrade die Queues auf Quorum um. Beachten Sie bitte, dass beginnend mit OpenStack's "Caracal"-Release in Trixie OpenStack nur noch Quorum-Queues unterstützt.

5.1.6. Upgrade von RabbitMQ direkt von Bookworm nicht möglich

Es gibt keine direkte, einfache Upgrade-Möglichkeit für RabbitMQ von Bookworm auf Trixie. Details hierzu finden Sie im Fehlerbericht 1100165.

Die empfohlene Vorgehensweise zum Upgrade ist, die komplette rabbitmq-Datenbank zu löschen und (nach dem Upgrade auf Trixie) den Service neu zu starten. Dies können Sie erreichen, indem Sie /var/lib/rabbitmq/mnesia und alle deren Inhalte löschen.

5.1.7. MariaDB: Upgrades der Major-Version funktionieren nur zuverlässig nach einem vollständigen Shutdown

MariaDB unterstützt keine Fehler-Wiederherstellung über Grenzen der Major-Versionen hinweg. Wenn z.B. ein MariaDB 10.11-Server aufgrund von Spannungsausfall oder Software-Defekt einen vollständigen Shutdown erleidet, muss die Datenbank mit dem gleichen MariaDB-Binary (10.11) neu gestartet werden, um eine erfolgreiche Wiederherstellung zu gewährleisten, sowie über einen Abgleich der Daten- und Logdateien ein Roll-Forward oder Rollback von unterbrochenen Transaktionen durchführen zu können.

Falls Sie versuchen sollten, mit MariaDB 11.8 eine Wiederherstellung nach dem Crash einer MariaDB 10.11-Instanz durchzuführen, wird der neuere MariaDB-Server sich weigern zu starten.

Um sicherzustellen, dass ein MariaDB-Server vor einem Upgrade sauber heruntergefahren wird, stoppen Sie die Instanz mit

# service mariadb stop

und kontrollieren Sie die Server-Logs, ob dort ein Shutdown complete verzeichnet ist; damit wird bestätigt, dass alle Daten und Puffer vollständig auf die Festplatten geschrieben wurden.

Wenn der Server nicht sauber heruntergefahren wurde, starten Sie ihn neu, um die Wiederherstellung erneut anzustossen, warten Sie und stoppen Sie ihn dann erneut. Kontrollieren Sie nochmals, ob jetzt ein sauberer Shutdown erfolgt ist.

Zusätzliche Informationen, wie Sie Datensicherungen erstellen und andere relevante Infos für Systemadministratoren finden Sie in /usr/share/doc/mariadb-server/README.Debian.gz.

5.1.8. Ping wird nicht mehr mit erhöhten Privilegien ausgeführt

Die Standardversion von ping (aus dem Paket iputils-ping) wird nicht mehr mit der Möglichkeit des Zugriffs auf die Linux-Funktionalität CAP_NET_RAW installiert, sondern nutzt stattdessen ICMP_PROTO-Datagram-Sockets für die Netzwerkkommunikation. Der Zugriff auf diese Sockets wird gesteuert basierend auf der Unix-Gruppen-Mitgliedschaft (mittels dem net.ipv4.ping_group_range-Sysctl). In üblichen Installationen wird das linux-sysctl-defaults-Paket diesen Parameter auf einen recht freizügigen Wert setzen, der unprivilegierten Nutzern die Verwendung von ping erlaubt, aber in einigen Upgrade-Szenarien könnte es passieren, dass dieses Paket nicht installiert wird. Lesen Sie für weitere Informationen zur Semantik dieser Variable /usr/lib/sysctl.d/50-default.conf sowie die Kernel-Dokumentation.

5.1.9. Signifikante Änderungen bei der Paketierung von libvirt

Das Paket libvirt-daemon, welches eine API und Werkzeuge zur Verwaltung von Virtualisierungsplattformen enthält, wurde in Trixie gründlich überholt. Jedes Treiber- und Speicher-Backend hat jetzt sein eigenes Binärpaket, was deutlich mehr Flexibilität erlaubt.

Es wurde soweit als möglich versucht sicherzustellen, dass die installierten Komponenten während des Upgrades von Bookworm erhalten bleiben, aber in einigen Fällen könnte es passieren, dass Funktionalitäten vorübergehend verloren gehen. Wir empfehlen, dass Sie nach dem Upgrade sorgfältig die Liste der installierten Binärpakete durchgehen, um sicherzustellen, dass all die vorhanden sind, die sie erwarten; dies ist auch eine gute Gelegenheit, um unerwünschte Komponenten zu deinstallieren.

Zusätzlich könnten einige Konfigurationsdateien nach dem Upgrade als "obsolete" markiert sein. /usr/share/doc/libvirt-common/NEWS.Debian.gz enthält weitere Informationen, wie Sie verifizieren können, ob ihr System hiervon betroffen ist und wie Sie damit umgehen.

5.1.10. Dinge, die vor dem Neustart erledigt werden sollten

Wenn apt full-upgrade beendet ist, sollte das "formale" Upgrade abgeschlossen sein. Nach dem Upgrade auf trixie gibt es keine besonderen Maßnahmen, die vor dem nächsten Neustart erledigt werden müssen.

5.2. Dinge, die nicht auf den Upgrade-Prozess beschränkt sind

5.2.1. Einschränkungen bei der Sicherheitsunterstützung

Es gibt einige Pakete, bei denen Debian nicht versprechen kann, dass minimale Rückportierungen zur Behebung von Sicherheitslücken in die Pakete mit einfließen. Diese Pakete werden in den folgenden Abschnitten behandelt.

Bemerkung

Das Paket debian-security-support hilft Ihnen dabei, den Sicherheitsstatus der installierten Pakete im Blick zu behalten.

5.2.1.1. Sicherheitsstatus von Webbrowsern und deren Rendering-Engines

Debian 13 enthält mehrere Browser-Engines, die einem ständigen Ansturm von Sicherheitsproblemen ausgesetzt sind. Die hohe Rate von Anfälligkeiten und die teilweise fehlende Unterstützung seitens der Originalautoren in Form von langfristig gepflegten Programmversionen machen es sehr schwierig, für diese Browser und Engines Sicherheitsunterstützung auf Basis von rückportierten Fehlerkorrekturen anzubieten. Zusätzlich machen es Abhängigkeiten zwischen beteiligten Bibliotheken extrem schwierig, auf neuere Upstream-Versionen hochzurüsten. Applikationen, die das webkit2gtk-Quellpaket nutzen (z.B. epiphany) sind von der Sicherheitsunterstützung abgedeckt, andere, die qtwebkit verwenden (Quellpaket qtwebkit-opensource-src) jedoch nicht.

Generell empfehlen wir als Webbrowser Firefox oder Chromium. Sie werden für Stable aktuell gehalten, indem Sie auf Basis der neuesten ESR-Versionen jeweils neu gebaut werden. Die gleiche Strategie wird auch für Thunderbird angewandt.

Wenn eine Debian-Veröffentlichung zu oldstable wird, könnten offiziell unterstützte Webbrowser innerhalb des eigentlich unterstützen Zeitraums keine Updates mehr erhalten. Chromium zum Beispiel wird in oldstable nur noch für 6 Monate Sicherheits-Updates erhalten statt für die typischen 12 Monate.

5.2.1.2. Go-und Rust-basierte Pakete

Debian's Infrastruktur hat derzeit Probleme beim Neubau von Paketentypen, die systematischen Gebrauch von statischer Verlinkung machen. Das Anwachsen des Go und Rust Eco-Systems bedeutet, dass diese Pakete nur eingeschränkt von Debians Sicherheitsunterstützung abgedeckt sein werden, bis die Infrastruktur dahingehend entsprechend verbessert wurde.

In den meisten Fällen, wenn Aktualisierungen für Go- oder Rust-Development-Bibliotheken zugesichert werden, können diese nur im Rahmen von Zwischenveröffentlichungen ausgeliefert werden.

5.3. Überalterungen und Missbilligungen

5.3.1. Nennenswerte veraltete Pakete

Hier eine Liste bekannter und erwähnenswerter veralteter Pakete (lesen Sie hierzu auch Veraltete Pakete).

Zu diesen Paketen gehören:

  • Das libnss-gw-name-Paket wurde aus trixie entfernt. Die Originalentwickler empfehlen, stattdessen libnss-myhostname zu nutzen.

  • Das Paket pcregrep wurde aus trixie entfernt. Es kann durch grep -P (--perl-regexp) oder pcre2grep (aus dem Paket pcre2-utils) ersetzt werden.

5.3.2. Missbilligte Komponenten für trixie

Mit der nächsten Veröffentlichung von Debian 14 (Codename forky) werden einige Funktionalitäten missbilligt sein. Nutzer müssen auf andere Alternativen umsteigen, um Schwierigkeiten nach dem Upgrade auf Debian 14 zu vermeiden.

Dazu gehören folgende Funktionalitäten:

  • Das sudo-ldap-Paket wird in Forky aus dem Archiv entfernt werden. Das Debian-sudo-Team hat entschieden, es aufgrund von Schwierigkeiten bei der Pflege einzustellen und weil es nur noch eingeschränkt genutzt werden kann. Neue und bereits existierende Systeme sollten stattdessen libsss-sudo verwenden.

    Debian Trixie auf Forky hochzurüsten, ohne diese Umstellung durchgeführt zu haben, könnte zum Verlust von Privilegien führen, die Sie eigentlich erwarten.

    Weitere Details finden Sie im Fehlerbericht 1033728 sowie in der NEWS-Datei des sudo-Pakets.

  • Die Funktion sudo_logsrvd (zum Protokollieren von sudo's Input/Output) könnte in Forky entfernt werden, falls kein Betreuer hier einspringt. Diese Komponente kann im Debian-Kontext nur eingeschränkt genutzt werden, und ihre Betreuung macht das Basis-sudo-Paket unnötig komplex.

    Die zugehörige Diskussion finden Sie im Fehlerbericht 1101451 und in der NEWS-Datei des sudo-Pakets.

  • Das Paket libnss-docker wird vom Originalautor nicht mehr weiterentwickelt und erfordert Version 1.21 der Docker-API. Diese veraltete API-Version wird zwar von der Docker-Engine v26 (in Trixie enthalten) noch unterstützt, in v27+ (enthalten in Forky) aber entfernt. Falls die Entwicklung vom Autor nicht wieder aufgenommen wird, muss das Paket aus Debian Forky entfernt werden.

  • Die Pakete openssh-client und openssh-server unterstützen aktuell Authentifizierung und Schlüsselaustausch über GSS-API, was üblicherweise zur Authentifizierung bei Kerberos-Diensten genutzt wird. Dies hat zu einigen Problemen geführt, speziell auf Server-Seite, wo es eine neue Angriffsfläche für Pre-Authentication-Angriffe eröffnet. Debian's Haupt-OpenSSH-Pakete werden es daher beginnend mit forky nicht mehr unterstützten.

    Wenn Sie Authentifizierung oder Schlüsselaustausch über GSS-API einsetzen (suchen Sie in Ihren OpenSSH-Konfigurationsdateien nach Optionen, die mit GSSAPI beginnen), sollten Sie jetzt openssh-client-gssapi (auf Clients) oder openssh-server-gssapi (auf Servern) installieren. In trixie sind dies leere Pakete, die von openssh-client bzw. openssh-server abhängen; in forky werden sie als eigenständige Pakete gebaut.

  • sbuild-debian-developer-setup wurde zugunsten von sbuild+unshare abgekündigt

    sbuild, das Werkzeug zum Bauen von Paketen in einer Minimal-Umgebung, hat ein großes Update erhalten und sollte jetzt direkt "out of the box" funktionieren. Als Folge wird das Paket sbuild-debian-developer-setup jetzt nicht mehr benötigt und ist veraltet. Sie können die neue Version ausprobieren mit:

    $ sbuild --chroot-mode=unshare --dist=unstable hello
    
  • Die fcitx-Pakete wurde zugunsten von fcitx5 abgekündigt

    Das Rahmenwerk für Eingabemethoden fcitx, auch bekannt als fcitx4 oder fcitx 4.x, wird von den Originalentwicklern nicht mehr betreut. Als Folge davon sind jetzt alle zugehörigen Pakete veraltet. Das Paket fcitx sowie alle Pakete, deren Name mit fcitx- beginnt, werden in Debian forky entfernt.

    Nutzer, die fcitx verwenden, werden aufgefordert, auf fcitx5 zu wechseln; folgen Sie dazu dem fcitx upstream migration guide und Debian's Wikiseite.

5.4. Bekannte gravierende Fehler

Obwohl Debian-Veröffentlichungen nur freigegeben werden, wenn sie fertig sind, heißt dies unglücklicherweise nicht, dass keine bekannten Fehler existieren. Als Teil des Release-Prozesses werden alle Fehler mit Schweregrad serious oder höher aktiv vom Release-Team verfolgt, daher gibt es in Debians Fehlerdatenbank eine Übersicht über all diese Fehler. Folgende Fehler betreffen trixie zum Zeitpunkt der Veröffentlichung und sollten hier erwähnt werden:

Fehlernummer

Quell- oder Binärpaket

Beschreibung

1032240

akonadi-backend-mysql

akonadi server fails to start since it cannot connect to mysql database

1032177

faketime

faketime doesn't fake time (on i386)

918984

src:fuse3

provide upgrade path fuse -> fuse3 for bookworm

1016903

g++-12

tree-vectorize: Wrong code at O2 level (-fno-tree-vectorize is working)

1034752

src:gluegen2

embeds non-free headers