Chapitre 5. Problèmes à connaître pour Bookworm

Table des matières

5.1. Mise à niveau d'éléments spécifiques pour Bookworm
5.1.1. Microprogrammes non libres déplacés vers leur composant propre dans l'archive
5.1.2. Modifications des paquets qui règlent l'horloge système
5.1.3. Système de gestion de configuration Puppet mis à niveau vers la série 7
5.1.4. youtube-dl remplacé par yt-dlp
5.1.5. Les différentes versions de Fcitx ne sont plus co-installables
5.1.6. Les noms de paquet de MariaDB ne comprennent plus de numéro de version
5.1.7. Modifications de la journalisation du système
5.1.8. Modifications de rsyslog affectant les analyseurs de journaux tels que logcheck
5.1.9. rsyslog crée moins de fichiers journaux
5.1.10. La mise à niveau de slapd peut nécessiter une intervention manuelle
5.1.11. GRUB n'exécute plus os-prober par défaut
5.1.12. GNOME a réduit sa prise en charge de l'accessibilité pour les lecteurs d'écran
5.1.13. Modifications de la configuration de polkit
5.1.14. Un « /usr fusionné » est désormais requis
5.1.15. Unsupported upgrades from buster fail on libcrypt1
5.1.16. Choses à faire avant de redémarrer après la mise à niveau
5.2. Éléments non limités au processus de mise à niveau
5.2.1. Limitations de la prise en charge de sécurité
5.2.2. Interpréteurs Python marqués comme gérés en externe
5.2.3. Limitation de la prise en charge dans VLC de l'encodage et du décodage vidéo avec accélération matérielle
5.2.4. systemd-resolved a été séparé dans un paquet indépendant
5.2.5. systemd-boot a été séparé dans un paquet indépendant
5.2.6. systemd-journal-remote n'utilise plus GnuTLS
5.2.7. Changements importants dans adduser pour Bookworm
5.2.8. Nommage prévisible des interfaces réseau de Xen
5.2.9. Modification du traitement de l'accent circonflexe par dash
5.2.10. netcat-openbsd prend en charge les sockets abstraits
5.3. Obsolescence et dépréciation
5.3.1. Paquets obsolètes
5.3.2. Composants dépréciés pour Bookworm
5.4. Bogues sévères connus

Parfois, des changements ont des effets de bord que nous ne pouvons pas raisonnablement éviter sans nous exposer à des bogues à un autre endroit. Cette section documente les problèmes que nous connaissons. Veuillez également lire l'errata, la documentation des paquets concernés, les rapports de bogues et les autres sources d'informations mentionnées dans la Section 6.1, « Lectures pour aller plus loin ».

5.1. Mise à niveau d'éléments spécifiques pour Bookworm

Cette section concerne les éléments liés à la mise à niveau de Bullseye vers Bookworm

5.1.1.  Microprogrammes non libres déplacés vers leur composant propre dans l'archive

Comme décrit dans la Section 2.2, « Sections de l'archive », les paquets de microprogrammes non libres sont maintenant fournis à partir d'un composant de l'archive qui leur est dédié, appelé non-free-firmware. Afin d'être sûr que les paquets de microprogrammes non libres bénéficient de mises à niveau appropriées, des modifications dans la configuration d'APT sont nécessaires. En supposant que le composant non-free a été seulement ajouté au fichier sources-list d'APT pour installer les microprogrammes, l'entrée de la liste de source d'APT pourrait ressembler à cela :

deb https://deb.debian.org/debian bookworm main non-free-firmware

Si vous êtes orienté vers ce chapitre par apt, vous pouvez éviter qu'il vous informe en permanence de cette modification en créant un fichier d'apt.conf(5) nommé /etc/apt/apt.conf.d/no-bookworm-firmware.conf dont le contenu est le suivant.

APT::Get::Update::SourceListWarnings::NonFreeFirmware "false";

5.1.2. Modifications des paquets qui règlent l'horloge système

Le paquet ntp, qui était le moyen par défaut pour régler l'horloge système à partir d'un serveur NTP (« Network Time Protocol »), a été remplacé par le paquet ntpsec.

La plupart des utilisateurs n'auront pas besoin d'entreprendre une action spécifique pour migrer de ntp à ntpsec.

Dans Bookworm, il y a d'autres paquets qui fournissent un service équivalent. Dans Debian, le paquet par défaut est maintenant systemd-timesyncd et il peut être suffisant pour les utilisateurs qui ont seulement besoin d'un client ntp pour régler l'horloge. Bookworm inclut aussi les paquets chrony et openntpd qui prennent en charge des fonctionnalités plus évoluées telles que l'exploitation de leur propre serveur NTP.

5.1.3. Système de gestion de configuration Puppet mis à niveau vers la série 7

Puppet a été mis à niveau de la série 5 à la série 7, sautant la série Puppet 6 purement et simplement. Cela introduit des changements majeurs dans l'écosystème de Puppet.

L'application classique Puppet Master 5.5.x basée sur Ruby a été déclarée obsolète par l'amont et n'est plus disponible dans Debian. Elle est remplacée par Puppet Server 7.x, fournie par le paquet puppetserver. Le paquet est automatiquement installé comme dépendance du paquet de transition puppet-master.

Dans certains cas, Puppet server est un remplaçant pur et simple de Puppet Master, mais vous devriez revoir les fichiers de configuration disponibles dans /etc/puppet/puppetserver pour être sûr que la configuration par défaut est adaptée à votre déploiement. En particulier, l'ancien format du fichier auth.conf est obsolète, consultez la documentation d'auth.conf pour plus de détails.

L'approche recommandée est de mettre à niveau le serveur avant les clients. Le serveur Puppet 7 est rétrocompatible avec les anciens clients ; un serveur Puppet 5 peut encore gérer des agents mis à niveau, mais ne peut pas enregistrer de nouveaux agents Puppet 7. Aussi, si vous déployez de nouveaux agents Puppet 7 avant de mettre à niveau le serveur, vous ne pourrez pas les ajouter à votre parc.

Le paquet puppet a été remplacé par le paquet puppet-agent et est maintenant un paquet de transition pour assurer une mise à niveau en douceur.

Finalement, le paquet puppetdb avait été retiré de Bullseye, mais est réintroduit dans Bookworm.

5.1.4. youtube-dl remplacé par yt-dlp

L'outil populaire youtube-dl qui permet de télécharger des vidéos à partir d'une grande variété de sites web (y compris, mais pas seulement, YouTube) n'est plus inclus dans Debian. Il a été remplacé par un paquet de transition vide qui installe le paquet yt-dlp à la place. yt-dlp est un projet dérivé de youtube-dl où actuellement un nouveau développement est en cours.

Aucune enveloppe de compatibilité n'est fournie, aussi vous devrez modifier vos scripts et votre comportement pour appeler yt-dlp à la place de youtube-dl. Ses fonctionnalités devraient être identiques pour la plupart bien que certains détails du comportement et certaines options aient été modifiés. Prenez soin de vérifier la page de manuel de yt-dlp et en particulier la section Differences in default behavior.

5.1.5. Les différentes versions de Fcitx ne sont plus co-installables

Les paquets fcitx et fcitx5 fournissent les versions 4 et 5 du cadriciel populaire de méthode de saisie Fcitx. Suivant les recommandations de l'amont, elles ne peuvent plus être installées ensemble sur le même système d'exploitation. Les utilisateurs doivent déterminer quelle version de Fcitx sera conservée s'ils ont installé auparavant à la fois fcitx et fcitx5.

Avant la mise à niveau, les utilisateurs sont fortement encouragés à purger tous les paquets liés de la version de Fcitx non désirée (fcitx-* pour Fcitx 4 et fcitx5-* pour Fcitx 5). Quand la mise à niveau est achevée, il faut envisager d'exécuter de nouveau la commande im-config pour choisir le cadriciel de méthode de saisie souhaité à utiliser sur le système.

Vous en saurez plus sur le contexte en lisant l'annonce publiée dans la liste de diffusion (texte en chinois simplifié).

5.1.6. Les noms de paquet de MariaDB ne comprennent plus de numéro de version

À la différence de Bullseye où la version de MariaDB était dans le nom des paquets (par exemple mariadb-server-10.5 et mariadb-client-10.5), dans Bookworm, les noms de paquet équivalents de MariaDB 10.11 ne comportent aucune mention de version (par exemple mariadb-server ou mariadb-client). La version de MariaDB est toujours visible dans les métadonnées de version de paquet.

Il y a au moins un scénario de mise à niveau connu (bogue nº 1035949) où la transition vers les noms de paquet sans version échoue : l'exécution de'

apt-get install default-mysql-server

peut échouer quand mariadb-client-10.5 et le fichier /usr/bin/mariadb-admin qu'il contient sont supprimés avant que le service de démarrage SysV du serveur MariaDB ait émis une commande d'arrêt qui utilise mariadb-admin. Le palliatif est d'exécuter

apt upgrade

avant d'exécuter

apt full-upgrade

.

Pour plus d'informations sur la modification des noms de paquet dans MariaDB, consultez /usr/share/doc/mariadb-server/NEWS.Debian.gz.

5.1.7. Modifications de la journalisation du système

Le paquet rsyslog n'est plus nécessaire sur la plupart des systèmes et vous pouvez le supprimer.

De nombreux programmes produisent des messages de journalisation pour informer l'utilisateur de ce qu'ils font. Ces messages peuvent être gérés par un « journal » de systemd ou par un « démon syslog » comme rsyslog.

Dans Bullseye, rsyslog était installé par défaut et le journal de systemd était configuré pour transmettre les messages de journalisation à rsyslog qui écrit les messages dans divers fichiers texte tels que /var/log/syslog.

Depuis Bookworm, rsyslog n'est plus installé par défaut. Si vous ne voulez pas continuer à utiliser rsyslog, après la mise à niveau vous pouvez le marquer comme installé automatiquement avec la commande

apt-mark auto rsyslog

puis un

apt autoremove

le retirera si c'est possible. Si vous avez effectué une mise à niveau à partir de versions plus anciennes de Debian et si vous n'acceptez pas les réglages de la configuration par défaut, le journal peut ne pas être configuré pour enregistrer les messages dans un stockage permanent : vous trouverez des instructions pour activer cela dans journald.conf(5).

Si vous choisissez d'abandonner rsyslog, vous pouvez utiliser la commande journalctl pour lire les messages de journalisation qui sont stockés au format binaire dans /var/log/journal. Par exemple,

journalctl -e

montre les messages les plus récents dans le journal et

journalctl -ef

montre les nouveaux messages au moment de leur écriture (semblable à l'exécution de

tail -f /var/log/syslog

).

5.1.8. Modifications de rsyslog affectant les analyseurs de journaux tels que logcheck

rsyslog adopte dorénavant par défaut les « horodatages haute précision », ce qui peut affecter les autres programmes qui analysent les journaux système. Vous trouverez plus d'informations sur la manière de personnaliser ce réglage dans rsyslog.conf(5).

La modification des horodatages peut nécessiter la mise à jour des règles de logcheck créées localement. logcheck vérifie les messages dans le journal système (produits par systemd-journald ou rsyslog) par rapport à une base de données personnalisable d'expressions rationnelles connues sous le nom de règles. Les règles qui cherchent une correspondance avec l'heure de production du message devront être mises à jour pour une correspondance avec le nouveau format de rsyslog. Les règles par défaut, fournies par le paquet logcheck-database, ont été mises à jour, mais d'autres règles, y compris celles créées localement, peuvent nécessiter une mise à jour pour reconnaître le nouveau format. Consultez /usr/share/doc/logcheck-database/NEWS.Debian.gz pour un script qui aide à mettre à jour les règles locales de logcheck.

5.1.9. rsyslog crée moins de fichiers journaux

rsyslog a modifié le choix des fichiers de journal qu'il créait, et certains fichiers dans /var/log peuvent être supprimés.

Si vous continuez à utiliser rsyslog (consultez Section 5.1.7, « Modifications de la journalisation du système »), certains fichiers de journal dans /var/log ne seront plus créés par défaut. Les messages qui étaient écrits dans ces fichiers sont aussi dans /var/log/syslog, mais ne sont plus créés par défaut. Tout ce qui était écrit habituellement dans ces fichiers sera encore disponible dans /var/log/syslog.

Les fichiers qui ne sont plus créés sont :

  • /var/log/mail.{info,warn,err}

    Ces fichiers contenaient les messages de l'agent local de transport de courrier électronique (« MTA »), triés par priorité.

    Comme /var/log/mail.log contient tous les messages concernant le courrier, ces fichiers et leurs homologues issus de la rotation peuvent être supprimés sans risque. Si vous utilisez ces fichiers pour surveiller les anomalies, quelque chose comme logcheck pourrait être une alternative appropriée.

  • /var/log/lpr.log

    Ce fichier contenait les messages de journalisation relatifs à l'impression. Le système d'impression par défaut dans Debian est cups qui n'utilise pas ce fichier ; aussi, à moins que vous ayez installé un système d'impression différent, ce fichier et ses homologues issus de la rotation peuvent être supprimés.

  • /var/log/{messages,debug,daemon.log}

    Ces fichiers et leurs homologues issus de la rotation peuvent être supprimés. Tout ce qui était habituellement écrit dans ces fichiers sera toujours dans /var/log/syslog.

5.1.10. La mise à niveau de slapd peut nécessiter une intervention manuelle

OpenLDAP 2.5 est une nouvelle version majeure et comprend plusieurs modifications incompatibles décrites dans l'annonce de publication amont. En fonction de la configuration, le service slapd pourrait demeurer arrêté après la mise à niveau, jusqu'à ce que les mises à jour de la configuration soient finalisées.

Voici quelques modifications incompatibles connues :

  • Les dorsaux pour la base de données slapd-bdb(5) et slapd-hdb(5) ont été retirés. Si vous utilisez un de ces dorsaux dans Bullseye, il est fortement recommandé de migrer vers le dorsal slapd-mdb(5) avant la mise à niveau vers Bookworm.

  • Le dorsal de base de données slapd-shell(5) a été retiré.

  • La surcouche slapo-ppolicy(5) inclut maintenant dans le module son schéma compilé. L'ancien schéma externe, s'il est présent, est en conflit avec celui nouvellement construit.

  • Le module de mot de passe issu de contribution pw-argon2 a été renommé argon2.

Des instructions pour finaliser la mise à niveau et reprendre le service slapd peuvent être trouvées dans /usr/share/doc/slapd/README.Debian.gz. Vous pouvez aussi consulter les notes de mise à niveau de l'amont.

5.1.11. GRUB n'exécute plus os-prober par défaut

Depuis longtemps, grub a utilisé le paquet os-prober pour détecter les autres systèmes d'exploitation installés afin qu'il puisse les ajouter au menu d'amorçage. Malheureusement, cela peut être problématique dans certains cas (par exemple lorsque des machines virtuelles invitées sont en service), aussi cela a été désactivé par défaut dans la dernière publication amont.

Si vous utilisez GRUB pour amorcer votre machine et désirez continuer à avoir d'autres systèmes d'exploitation listés sur votre menu d'amorçage, vous pouvez changer cela. Soit vous éditez le fichier /etc/default/grub, assurez-vous d'avoir le réglage GRUB_DISABLE_OS_PROBER= false et exécutez à nouveau la commande update-grub, soit vous exécutez

dpkg-reconfigure <GRUB_PACKAGE>

pour changer cela et d'autres configuration de GRUB d'une manière plus conviviale.

5.1.12.  GNOME a réduit sa prise en charge de l'accessibilité pour les lecteurs d'écran

Beaucoup d'applications GNOME sont passées de la boîte à outils graphiques GTK3 à GTK4. Malheureusement, cela a rendu de nombreuses applications beaucoup moins utilisables avec des lecteurs d'écran tels que orca.

Si vous dépendez d'un lecteur d'écran, vous devriez envisager de migrer pour un bureau différent tel que Mate, qui dispose d'une meilleure prise en charge de l'accessibilité. Vous pouvez faire cela en installant le paquet mate-desktop-environment. Des informations pour l'utilisation de Orca avec Mate sont disponibles sur le wiki.

5.1.13. Modifications de la configuration de polkit

Dans un souci d'homogénéité avec l'amont et d'autres distributions, le service polkit (anciennement PolicyKit), qui permet à des programmes non privilégiés d'accéder à des services système privilégiés, a changé de syntaxe et d'emplacement pour les règle de politique locales. Il est maintenant possible d'écrire des règles locales pour personnaliser la politique de sécurité en JavaScript, puis de les placer dans /etc/polkit-1/rules.d/*.rules. Vous trouverez des exemples de règles utilisant le nouveau format dans /usr/share/doc/polkitd/examples/, et polkit(8) contient des informations complémentaires.

Auparavant, les règles pouvait être écrites au format pkla et placées dans les sous-répertoires de /etc/polkit-1/localauthority ou de /var/lib/polkit-1/localauthority. Toutefois, les fichiers .pkla devraient désormais être considérés comme obsolètes et ils ne continueront à fonctionner que si le paquet polkitd-pkla est installé. Ce paquet sera généralement installé automatiquement lors de la mise à niveau vers Bookworm, mais il est probable qu'il ne sera plus inclus dans les publications de Debian à venir, aussi toutes les surcharges de politique locales auront besoin d'être converties au format JavaScript.

5.1.14.  Un « /usr fusionné » est désormais requis

Debian a adopté une organisation de système de fichiers, appelée « /usr fusionné » qui n'inclut plus les anciens répertoires /bin, /sbin, /lib ou les variantes optionnelles comme /lib64. Dans la nouvelle organisation, les anciens répertoires sont remplacés par des liens symboliques vers les emplacements correspondants /usr/bin, /usr/sbin, /usr/lib et /usr/lib64. Cela signifie, par exemple, qu'à la fois /bin/bash et /usr/bin/bash chargeront bash.

Pour les systèmes installés sous Buster ou Bullseye, il n'y aura pas de modification dans la mesure où la nouvelle organisation du système de fichiers est déjà celle par défaut dans ces versions. Néanmoins, l'ancienne organisation n'est plus prise en charge et les systèmes qui l'utilisent seront convertis à la nouvelle organisation lors de la mise à niveau vers Bookworm.

La conversion vers la nouvelle organisation ne devrait pas avoir d'impact pour la plupart des utilisateurs. Tous les fichiers sont déplacés automatiquement vers leur nouvel emplacement même s'ils ont été installés localement ou proviennent de paquets non fournis par Debian et les chemins codés en dur tels que /bin/sh continuent à fonctionner. Il existe cependant quelques problèmes potentiels :

  • dpkg --search

    donnera des réponses erronées pour les fichiers déplacés dans leur nouvel emplacement :

    dpkg --search /usr/bin/bash

    ne considérera pas que bash vient d'un paquet. (Mais

    dpkg --search /bin/bash

    fonctionne encore comme prévu.)

  • Des logiciels locaux non fournis par Debian peuvent ne pas prendre en charge la nouvelle organisation et peuvent, par exemple compter sur le fait que /usr/bin/name et /bin/name sont des fichiers différents. Cela n'est pas pris en charge par les systèmes fusionnés (y compris les nouvelles installations depuis Buster), aussi les programmes de ce type doivent être corrigés ou supprimés avant la mise à niveau.

  • Les systèmes qui reposent sur une « couche de base » qui n'est pas directement accessible en écriture (comme les images WSL1 ou les systèmes de conteneur utilisant des systèmes de fichiers overlayfs multicouches) ne peuvent pas être convertis sans risque et doivent soit être remplacés (par exemple en installant une nouvelle image WSL1à partir du magasin) ou avoir une mise à niveau de chaque niveau individuel (par exemple en mettant à niveau la couche de base de Debian de l'overlays indépendamment) plutôt que de faire l'objet d'un dist-upgrade.

Pour plus d'information, consultez The Case for the /usr merge et la résolution du Comité technique de Debian.

5.1.15. Unsupported upgrades from buster fail on libcrypt1

Debian officially supports upgrades only from one stable release to the next, e.g. from bullseye to bookworm. Upgrades from buster to bookworm are not supported, and will fail due to Bug #993755 with the following error:

Setting up libc6: (2.36-9) ...
/usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
dpkg: error processing package libc6: (--configure):
installed libc6: package post-installation script subprocess returned error exit status 127
        

It is however possible to manually recover from this particular situation by forcibly installing the new libcrypt1:

# cd $(mktemp -d)
# apt download libcrypt1
# dpkg-deb -x libcrypt1_*.deb .
# cp -ra lib/* /lib/
# apt --fix-broken install
        

5.1.16. Choses à faire avant de redémarrer après la mise à niveau

Lorsque apt full-upgrade a terminé, la mise à niveau « formelle » est terminée. Pour la mise à niveau vers Bookworm il n'y a rien de particulier à faire avant de redémarrer.

5.2. Éléments non limités au processus de mise à niveau

5.2.1. Limitations de la prise en charge de sécurité

Il existe certains paquets pour lesquels Debian ne peut pas garantir de rétroportages minimaux pour les problèmes de sécurité. Cela est développé dans les sous-sections suivantes.

[Note]Note

Le paquet debian-security-support aide à suivre l’état de la prise en charge du suivi de sécurité des paquets installés.

5.2.1.1. État de sécurité des navigateurs web et de leurs moteurs de rendu

Debian 12 inclut plusieurs moteurs de navigateur web qui sont affectés par un flot continu de vulnérabilités de sécurité. Ce taux élevé de vulnérabilités ainsi que le manque partiel de prise en charge amont sous la forme de branches maintenues à long terme rendent difficiles les corrections de sécurité rétroportées. De plus, les interdépendances des bibliothèques rendent extrêmement difficile la mise à niveau vers une nouvelle version. Les applications utilisant le paquet source webkit2gtk (par exemple, epiphany) sont couvertes par la prise en charge de sécurité, mais les applications utilisant qtwebkit (paquet source qtwebkit-opensource-src) ne les sont pas.

Pour une utilisation classique, nous recommandons les navigateurs Firefox ou Chromium. Ceux-ci seront maintenus à jour en recompilant les versions ESR actuelles pour stable. La même stratégie sera appliquée pour Thunderbird.

Une fois qu'une version devient oldstable, les navigateurs pris en charge officiellement ne continuent pas à recevoir des mises à jour durant la période normale de couverture. Par exemple, Chromium ne recevra que pendant six mois une prise en charge de sécurité dans Oldstable au lieu des douze mois habituels.

5.2.1.2. Paquets basés sur Go et Rust

L’infrastructure de Debian a actuellement des problèmes pour recompiler correctement les types de paquets qui ont systématiquement recours aux liens statiques. Avec la croissance de l’écosystème de Go et de Rust cela signifie que ces paquets seront couverts par une prise en charge de sécurité limitée jusqu’à ce que l’infrastructure soit améliorée pour pouvoir les gérer durablement.

Dans la plupart des cas, si les mises à jour sont justifiées pour les bibliothèques de développement de Go ou de Rust, elles ne viendront que des mises à jour intermédiaires normales.

5.2.2. Interpréteurs Python marqués comme gérés en externe

Les paquets de l'interpréteur python3 fournis par Debian (python3.11 et pypy3) sont désormais marqués comme ayant une gestion externe, suivant la PEP-668. La version de python3-pip fournie par Debian suit cela et refusera d'installer manuellement des paquets sur les interpréteurs Python de Debian, à moins que l'option --break-system-packages ne soit spécifiée.

Si vous avez besoin d'installer une application Python (ou une version) qui n'est pas empaquetée par Debian, nous vous recommandons de l'installer avec pipx (présent dans le paquet Debian pipx). pipx configurera un environnement isolé des autres application et des modules Python du système, et installe l'application et ses dépendances à l'intérieur.

Si vous avez besoin d'installer un module de bibliothèque (ou une version) qui n'est pas empaqueté dans Debian, nous vous recommandons de l'installer dans un environnement virtuel quand c'est possible. Vous pouvez créer des environnements virtuels avec le module stdlib Python venv (du paquet Debian python3-venv) ou avec l'outil Python tierce virtualenv (du paquet Debian virtualenv). Par exemple, plutôt que d'exécuter pip install --user toto, exécutez  mkdir -p ~/.venvs && python3 -m venv ~/.venvs/foo && ~/.venvs/toto/bin/python -m pip install toto pour l'installer dans un environnement virtuel dédié.

Consultez /usr/share/doc/python3.11/README.venv pour plus de détails.

5.2.3. Limitation de la prise en charge dans VLC de l'encodage et du décodage vidéo avec accélération matérielle

Le lecteur de vidéos VLC prend en charge l'encodage et le décodage vidéo avec accélération matérielle au moyen de VA-API et VDPAU. Néanmoins, la prise en charge de VLC pour VA-API est étroitement liée à la version de FFmpeg. Comme FFmpeg a été mis à niveau vers la branche 5.x, la prise en charge de VA-API de VLC a été désactivée. Les utilisateurs de processeurs graphiques offrant une prise en charge native de VA-API (par exemple, les processeurs graphiques Intel et AMD) peuvent être confrontés à une utilisation élevée du processeur durant la lecture et l'encodage de vidéos.

Les utilisateurs de processeurs graphiques offrant une prise en charge native de VDPAU (par exemple, NVIDIA avec des pilotes non libres) ne sont pas affectés par ce problème.

La prise en charge de VA-API et VDPAU peut être vérifiée avec les commandes vainfo et vdpauinfo (chacune fournie par un paquet Debian de même nom).

5.2.4. systemd-resolved a été séparé dans un paquet indépendant

Le nouveau paquet systemd-resolved ne sera pas installé automatiquement lors des mises à niveau. Si vous utilisez le service système systemd-resolved, veuillez installer le nouveau paquet manuellement après la mise à niveau et noter que jusqu'à ce que le paquet soit installé, la résolution DNS pourrait ne plus fonctionner dans la mesure où le service ne sera pas installé sur le système. L'installation de ce paquet donnera automatiquement à systemd-resolved le contrôle de /etc/resolv.conf. Pour plus d'informations sur systemd-resolved, consultez la documentation officielle. Notez que systemd-resolved n'était pas et n'est toujours pas le résolveur DNS par défaut dans Debian. Si vous n'avez pas configuré votre machine pour utiliser systemd-resolved comme résolveur DNS, aucune action n'est nécessaire.

5.2.5. systemd-boot a été séparé dans un paquet indépendant

Le nouveau paquet systemd-boot ne sera pas installé automatiquement lors des mises à niveau. Si vous utilisez le service système systemd-boot, veuillez installer ce nouveau paquet manuellement après la mise à niveau et noter que jusqu'à ce que vous l'ayez fait, l'ancienne version de systemd-boot sera utilisée comme chargeur d'amorçage. L'installation de ce paquet configurera automatiquement systemd-boot comme chargeur d'amorçage de la machine. Le chargeur d'amorçage par défaut de Debian est toujours GRUB. Si vous n'avez pas configuré la machine pour qu'elle utilise systemd-boot comme chargeur d'amorçage, aucune action n'est nécessaire.

5.2.6. systemd-journal-remote n'utilise plus GnuTLS

Les services optionnels systemd-journal-gatewayd et systemd-journal-remote sont maintenant construits sans la prise en charge de GnuTLS, ce qui signifie que l'option --trust n'est plus fournie par aucun de ces programmes et une erreur sera déclenchée si l'option est spécifiée.

5.2.7. Changements importants dans adduser pour Bookworm

Il y a eu plusieurs modifications dans adduser. La plus importante est que --disabled-password et --disabled-login sont désormais identiques fonctionnellement. Pour davantage de détails, consultez le fichier /usr/share/doc/adduser/NEWS.Debian.gz.

5.2.8. Nommage prévisible des interfaces réseau de Xen

La logique de nommage prévisible dans systemd des interfaces réseau a été étendu pour générer des noms stables à partir des informations de périphérique de Xen-netfront. Cela signifie qu'à la place de l'ancien système de noms assignés par le noyau, les interfaces ont désormais des noms stables de la forme enXN. Vous devez adapter votre système avant de redémarrer après la mise à niveau. Vous trouverez davantage d'informations sur la page NetworkInterfaceNames du wiki.

5.2.9. Modification du traitement de l'accent circonflexe par dash

dash, qui fournit par l'interpréteur de commandes par défaut du système /bin/sh dans Debian, est passé à un traitement de l'accent circonflexe (^) comme caractère littéral, comme cela toujours été le comportement attendu conforme à POSIX. Cela signifie que dans Bookworm [^0-9] ne signifie plus « pas de 0 à  » mais « de 0 à 9 et ^ ».

5.2.10. netcat-openbsd prend en charge les sockets abstraits

L'utilitaire netcat qui permet de lire et d'écrire des données à travers des connexions réseau prend en charge les sockets abstraits et les utilise par défaut dans certaines circonstances.

Par défaut, netcat est fourni par netcat-traditional. Néanmoins, si netcat est fourni par le paquet netcat-openbsd et si vous utilisez un socket AF_UNIX, alors ce nouveau comportement par défaut s'applique. Dans ce cas,l'option -U pour nc interprétera maintenant un argument débutant par une @ comme demandant un socket abstrait plutôt que comme un nom de fichier débutant par une @ dans le répertoire en cours. Cela peut avoir des implications de sécurité parce que les permissions du système de fichiers ne peuvent plus être utilisées pour contrôler l'accès à un socket abstrait. Vous pouvez continuer à utiliser un nom de fichier débutant par une @ en préfixant le nom avec ./ ou en spécifiant un chemin absolu.

5.3. Obsolescence et dépréciation

5.3.1. Paquets obsolètes

La liste suivante contient des paquets connus et obsolètes (voir Section 4.8, « Paquets obsolètes » pour une description).

La liste des paquets obsolètes contient :

  • Le paquet libnss-ldap a été supprimé de Bookworm. Ses fonctionnalités sont maintenant couvertes par libnss-ldapd et libnss-sss.

  • Le paquet libpam-ldap a été supprimé de Bookworm. Son successeur est libpam-ldapd.

  • Le paquet fdflush a été supprimé de Bookworm. À sa place veuillez utiliser blockdev --flushbufs provenant de util-linux.

  • Le paquet libgdal-perl a été retiré de Bookworm parce que la liaison Perl pour GDAL n'est plus prise en charge par l'amont. Si vous avez besoin de la prise en charge de Perl pour GDAL, vous pouvez migrer vers l'interface FFI fournie par le paquet Geo::GDAL::FFI disponible dans le CPAN. Vous devrez construire vos propres binaires comme cela est documenté sur la page BookwormGdalPerl du Wiki.

5.3.2. Composants dépréciés pour Bookworm

Avec la prochaine publication de Debian 13 (nom de code Trixie), certaines fonctionnalités seront déconseillées. Les utilisateurs devront migrer vers des alternatives pour éviter les problèmes lors de la mise à jour vers Debian 13.

Cela comprend les fonctionnalités suivantes :

  • Le développement du service NSS gw_name s'est arrêté en 2015. Le paquet associé libnss-gw-name est susceptible d'être supprimé dans une prochaine version de Debian. Le développeur amont suggère d'utiliser libnss-myhostname à la place.

  • dmraid n'a pas connu d'activité amont depuis la fin de 2010 et est moribond dans Debian. Bookworm sera la dernière publication à le fournir, aussi veuillez prendre vos dispositions en conséquence si vous utilisez dmraid.

  • request-tracker4 a été remplacé par request-tracker5 dans cette publication et sera supprimé dans les publications à venir. Il est recommandé de prévoir une migration de request-tracker4 à request-tracker5 pendant la durée de cette publication.

  • The isc-dhcp suite has been deprecated by the ISC. The Debian Wiki has a list of alternative implementations, see DHCP Client and DHCP Server pages for the latest. If you are using NetworkManager or systemd-networkd, you can safely remove the isc-dhcp-client package as they both ship their own implementation. If you are using the ifupdown package, you can experiment with udhcpc as a replacement. The ISC recommends the Kea package as a replacement for DHCP servers.

    The security team will support the isc-dhcp package during the bookworm lifetime, but the package will likely be unsupported in the next stable release, see bug #1035972 (isc-dhcp EOL'ed) for more details.

5.4. Bogues sévères connus

Bien que Debian ne publie que quand elle est prête, cela ne signifie pas malheureusement qu'il n'y a pas de bogues connus. Dans le cadre du processus de publication, tous les bogues de sévérité sérieuse ou plus élevée sont activement suivis par l'équipe de publication, aussi une vue d'ensemble de ces bogues qui ont été marqués comme devant être ignorés dans la partie finale du processus de publication de Bookworm est disponible dans le système de suivi de bogues de Debian. Les bogues suivants affectent Bookworm au moment de la publication et méritent d'être mentionnés dans ce document :

Numéro de boguePaquet (source ou binaire)Description
1032240akonadi-backend-mysqlle serveur akonadi échoue à démarrer puisqu'il ne peut pas se connecter à la base de données mysql
918984src:fuse3fournit une mise à niveau du chemin de fuse -> fuse3 pour Bookworm
1016903g++-12tree-vectorize : code erroné au niveau 02 (-fno-tree-vectorize fonctionne)
1020284git-daemon-runéchoue à purger : deluser -f : Unknown option: f
919296git-daemon-runéchoue avec l'avertissement : 'warning: git-daemon: unable to open supervise/ok: file does not exist'
1034752src:gluegen2intègre des en-têtes non-libres
1036256src:golang-github-pin-tftpéchec de construction à partir des sources dans testing : dh_auto_test : erreur : cd _build && go test -vet=off -v -p 8 github.com/pin/tftp github.com/pin/tftp/netascii renvoie le code de sortie 1
1036575groonga-bindépendances manquantes : libjs-jquery-flot, libjs-jquery-ui
1036041src:grub2upgrade-reports : Dell XPS 9550 échoue à démarrer après la mise à niveau de Bullseye à Bookworm - bogue d'interaction GRUB/BIOS
558422grub-pcla mise à niveau bloque
913916grub-efi-amd64option de démarrage UEFI supprimée après la mise à jour vers grub2 2.02~beta3-5+deb9u1
924151grub2-commongrub.cfg erroné pour l'amorçage efi et un disque entièrement chiffré
925134grub-efi-amd64grub-efi-amd64-signed: ne monte pas un disque chiffré
945001grub-efi-amd64GRUB-EFI perturbe les variables d'amorçage
965026grub-emugrub-emu bloque la console Linux lors d'une utilisation en tant que superutilisateur
984760.grub-efi-amd64la mise à niveau fonctionne, l'amorçage échoue (error: symbol `grub_is_lockdown` not found)
1036263src:guestfs-toolséchec de construction à partir des sources dans testing : make[6]: *** [Makefile:1716: test-suite.log] Error 1
916596iptablesiptables.postinst échoue à créer des liens
919058itstoolits-tools : plantage lors de la libération de xmlDocs
1028416kexec-toolssystemctl kexec n'éteint pas correctement le système et corrompt les systèmes de fichiers montés
935182libreoffice-corel'ouverture concurrente d'un fichier sur le même hôte entraîne la suppression du fichier
1036755src:linux6.1.26 <= x < 6.1.30 casse les applications utilisant mmap(MAP_32BIT) [affecte ganeti]
1036580src:llvm-defaultsajoutez quelques « Breaks » pour des mises à niveau plus fluides depuis Bullseye
1036359elpa-markdown-tocplante avec (wrong-type-argument consp nil)
1032647nvidia-driverécran noir intermittent après la mise à jour vers 525.89.02-1
1029342openjdk-17-jre-headlessjexec : impossibilité de localier java : No such file or directory
1035798libphp8.2-embedne fournit pas le lien SONAME /usr/lib/libphp.so -> libphp8.2.so
1034993software-properties-qtabsence de « Breaks+Replaces » pour software-properties-kde lors de la mise à niveau depuis Bullseye
1036388sylpheedréinitialisation de compte lors de la vérification du courrier
1036424sylpheedla réponse à un courriel que vous avez envoyé ne règle pas le compte en conséquence
994274src:syslinuxéchec de construction à partir des sources avec gnu-efi 3.0.13
1031152system-config-printerle bouton « Déverrouiller » dans system-config-printer ne fournit pas la boîte de dialogue d'augmentation de privilèges
975490u-boot-sunxil'amorçage d'A64-Olinuxino-eMMC est bloqué à « Starting kernel ... »
1034995python-is-python3absence de « Breaks+Replaces » pour python-dev-is-python2 lors de la mise à niveau depuis Bullseye
1036881whiteduneerreurs de segmentation
1036601xenstore-utilsdépendance manquante : xen-utils-common
1036578python3-yadene fournit pas de module python