apt-listbugs est un outil qui s'intègre à apt pour vérifier les rapports de bugs critiques (Critical, Grave, Serious) d'un paquet avant son installation ou sa mise à jour. Il vous aide à éviter d'installer une version d'un logiciel connu pour causer des problèmes majeurs.
Pourquoi Utiliser apt-listbugs ?
- Stabilité du système : Prévient l'installation de mises à jour qui pourraient casser votre système.
- Prise de décision éclairée : Vous informe des risques avant de valider une mise à jour.
- Sécurité : Un bug peut parfois être une vulnérabilité de sécurité. Être informé est la première étape de la prévention.
Prérequis
- Système d'exploitation : Debian, Ubuntu ou une distribution dérivée.
- Privilèges : Accès root ou privilèges sudo.
Installation
L'installation est très simple et se fait via les dépôts officiels :
sudo apt-get update
sudo apt-get install -y apt-listbugs
Une fois installé, il s'activera automatiquement. Lors de votre prochaine commande apt upgrade ou apt install, il entrera en action si nécessaire.
Utilisation typique
Lorsque vous lancez une mise à jour, si un paquet est concerné par un bug sérieux, apt-listbugs interrompra le processus et vous présentera un rapport.
sudo apt-get upgrade
Exemple de sortie
Vous verrez une liste des bugs pour chaque paquet concerné. Après la liste, un menu interactif vous demandera quoi faire :
Reading changelogs... Done
Retrieving bug reports... Done
Parsing bug reports... Done
Critical bugs of libc6 (2.31-13+deb11u2 -> 2.31-13+deb11u3)
#123456 - libc6: segmentation fault on starting any process
Summary:
libc6(1 bug)
Are you sure you want to install/upgrade the above packages? [Y/n/?]
Les choix possibles
- `y` (yes) : Ignorer le bug et installer la mise à jour (non recommandé pour les bugs critiques).
- `n` (no) : Annuler l'installation ou la mise à jour de CE paquet.
aptcontinuera avec les autres paquets non problématiques. - `p` (pin/épingler) : "Geler" la version du paquet.
aptignorera ce paquet lors des futures mises à jour jusqu'à ce que vous le débloquiez manuellement. C'est souvent le meilleur choix. - `?` : Affiche l'aide.
Choisir `p` est une solution sûre. Le paquet est mis en "hold" (retenu). Vous pouvez voir les paquets retenus avec
dpkg --get-selections | grep hold.
Consulter les bugs manuellement
Vous pouvez aussi interroger apt-listbugs pour un paquet spécifique sans lancer de mise à jour.
# Consulter les bugs pour le paquet nginx
apt-listbugs list nginx
# Consulter les bugs pour une version spécifique depuis un fichier .deb
apt-listbugs list /path/to/package.deb
Configuration
Le fichier de configuration principal est /etc/apt/apt.conf.d/10apt-listbugs.
Vous pouvez, par exemple, changer les niveaux de sévérité qui déclenchent une alerte :
# /etc/apt/apt.conf.d/10apt-listbugs
APT::Listbugs::Severities "critical,grave,serious";
Vous pourriez ajouter important si vous souhaitez être encore plus prudent.
L'objectif de
apt-listbugs est de vous faire réfléchir. Lisez au moins le titre du bug avant de décider d'installer un paquet critique pour votre système.
Conclusion
apt-listbugs est un outil simple mais extrêmement puissant pour maintenir la stabilité de serveurs ou de postes de travail basés sur Debian/Ubuntu. En quelques minutes, il ajoute une couche de protection indispensable contre les régressions logicielles. C'est un "must-have" pour tout administrateur système sérieux.