unattended-upgrades
À quoi il sert
unattended-upgrades installe automatiquement les mises à jour de paquets provenant d'origines choisies, en s'appuyant sur APT. Deux minuteurs systemd le pilotent : apt-daily.timer rafraîchit les listes et télécharge, apt-daily-upgrade.timer installe, chacun avec un délai aléatoire. Les deux réglages APT::Periodic::Update-Package-Lists et APT::Periodic::Unattended-Upgrade de /etc/apt/apt.conf.d/20auto-upgrades l'activent ; /etc/apt/apt.conf.d/50unattended-upgrades liste les origines autorisées (Allowed-Origins sur Ubuntu, Origins-Pattern sur Debian), les paquets exclus, et le redémarrage automatique éventuel. Chaque exécution est journalisée dans /var/log/unattended-upgrades/, et toutes les opérations APT dans /var/log/apt/history.log.
Quand le choisir
Sur tout serveur Debian ou Ubuntu : appliquer les correctifs de sécurité dans la journée plutôt qu'à la prochaine intervention humaine est la mesure la plus rentable d'un parc. Ubuntu Server l'installe et l'active par défaut, limité aux origines de sécurité. Sur Debian, sa présence dépend du mode d'installation : vérifiez avec dpkg -l unattended-upgrades. Les changements plus lourds (noyau en service, version majeure de la distribution) relèvent d'une procédure coordonnée, pas de ce mécanisme.
Points d'attention
- Une mise à jour installée n'est pas en service tant que les processus qui utilisent l'ancienne bibliothèque n'ont pas redémarré : c'est le rôle de needrestart, qui redémarre lui-même les services sur Ubuntu 24.04, sur toutes les machines à la fois.
- Par défaut, la machine ne redémarre pas (
Unattended-Upgrade::Automatic-Reboot "false"). Si vous l'activez, décalezAutomatic-Reboot-Timed'une machine à l'autre : deux serveurs redondants qui reçoivent le même noyau redémarreraient à la même heure. - Le fichier
/var/run/reboot-requiredsignale un redémarrage en attente. Sur Debian, c'est un crochet du paquet unattended-upgrades (/etc/kernel/postinst.d/unattended-upgrades) qui le crée à l'installation d'un noyau : sans ce paquet, le fichier n'apparaît pas. - Testez une modification de configuration avec
sudo unattended-upgrade --dry-run -v. - Juste après le démarrage, son exécution tient le verrou de dpkg (
Could not get lock /var/lib/dpkg/lock-frontend) : attendez, ne supprimez jamais le verrou. - Les mises à jour nocturnes modifient des fichiers : un outil de scellement comme AIDE doit voir sa base mise à jour après chaque passage, sinon ses rapports deviennent illisibles.
Par où commencer
La leçon Les paquets et les mises à jour du cours Linux : premiers pas, qui vérifie la configuration et lit les journaux des mises à jour automatiques, puis la leçon Mettre à jour le noyau et la distribution du cours Linux : administration système, qui traite des redémarrages coordonnés. Puis le dépôt du projet et la page UnattendedUpgrades du wiki Debian.