Accueil
» LINUX
»
Comment configurer des mises à niveau Debian automatisées et sans interface graphique avec Unattended-Upgrades
Comment configurer des mises à niveau Debian automatisées et sans interface graphique avec Unattended-Upgrades
Que fait la commande unattended-upgrades sur un serveur Debian sans interface graphique ?
unattended-upgradesIl s'agit du paquet Debian permettant de télécharger et d'installer automatiquement certaines mises à jour APT sans authentification. Sur un serveur sans interface graphique, il s'avère utile pour la maintenance de la sécurité lorsqu'aucune session de bureau n'est disponible et que personne n'est censé l'exécuter apt upgradequotidiennement.
En octobre 2026, Debian 13 « trixie » est la version stable de Debian, et le unattended-upgradespaquet stable est la version 2.12. Ce paquet est destiné aux mises à jour régulières, notamment celles de sécurité et de stabilité. Il ne remplace pas la procédure de mise à niveau planifiée d'une version majeure de Debian à une autre.
Le modèle pratique est simple : le mécanisme d’APT met à jour périodiquement les index des paquets, apt-daily-upgrade.serviceappelle le service de mise à niveau automatique selon une planification définie, et votre politique détermine les origines de paquets autorisées. Debian enregistre le résultat dans le répertoire `/etc/apt /var/log/unattended-upgrades/...
Liste de vérification pour une configuration rapide
L'installation du paquet peut être répétée sans risque : APT indiquera simplement qu'il est déjà installé si le système hôte le possède déjà. Debian décrit ce paquet comme un installateur automatique pour les mises à jour de sécurité et autres mises à jour sélectionnées par la politique de sécurité.
Exemple d'interface du terminal pour l'installation des mises à jour automatiques. Les noms des dépôts et le nombre de paquets varient selon la version de Debian et l'hôte.
Pour un parc de serveurs, ne présumez pas que chaque image possède la même configuration par défaut. Certaines installations Debian incluent déjà les mises à jour automatiques ; d’autres non, et une configuration existante peut avoir été désactivée. Après l’installation, examinez la configuration effective au lieu de supposer que la présence d’un paquet signifie que la politique souhaitée est active.
2. Activer les actualisations périodiques de la liste des paquets et les exécutions sans surveillance
Le fichier README de Debian indique qu'une configuration manuelle nécessite ces deux valeurs périodiques APT :
Paramètres périodiques APT qui demandent des actualisations quotidiennes de la liste des paquets et des mises à niveau automatiques.
Ceci ne garantit pas le démarrage d'une tâche à minuit pile chaque jour. Sur les systèmes Debian basés sur systemd, APT utilise des unités de temporisation et un comportement d'ordonnancement aléatoire. Pour les opérations courantes, vérifiez l'état réel de la temporisation et le prochain déclenchement sur l'hôte plutôt que de concevoir la surveillance en fonction d'une heure estimée.
3. Définir les dépôts autorisés à mettre à jour automatiquement les paquets.
La politique clé se trouve sous Unattended-Upgrade::Origins-Patternl'ancienne Allowed-Originsforme. La documentation de Debian 2.12 recommande de créer un fragment APT local qui trie après le 50unattended-upgradesfichier du paquet, par exemple :
Cette méthode est préférable à la modification permanente du fichier distribué, car les mises à jour de paquets peuvent remplacer ou entrer en conflit avec la configuration gérée par le fournisseur. Avant de rédiger des modèles, examinez les métadonnées de la version qu'APT utilise :
apt-cache policy
Pour la plupart des serveurs sans interface graphique, il est recommandé de limiter les mises à jour automatiques aux canaux stables et de sécurité de Debian. Les schémas exacts peuvent varier selon l'organisation de vos dépôts, les miroirs, les fournisseurs tiers et les règles de verrouillage ; considérez donc ces canaux apt-cache policycomme la source de référence pour chaque environnement.
Exemple d'affichage de l'éditeur de stratégie. Faites correspondre les origines aux dépôts signalés par la stratégie apt-cache sur votre serveur plutôt que de copier aveuglément les étiquettes.
Commandes optionnelles à connaître
La configuration 2.12 prend en charge les listes noires et blanches de paquets, les redémarrages automatiques, les rapports par e-mail, la suppression des dépendances inutilisées, les limites de bande passante, les restrictions de date de mise à jour et la sortie syslog. Certaines options sont particulièrement pertinentes sur les serveurs distants :
Configurez la messagerie uniquement si la machine dispose d'un service de messagerie fonctionnel. Si vous activez le redémarrage automatique, le comportement par défaut de Debian est important : lorsque Automatic-Rebootcette option est activée et /var/run/reboot-requiredque la machine est configurée, elle peut redémarrer sans confirmation. Vous pouvez planifier Unattended-Upgrade::Automatic-Reboot-Timece redémarrage lors d'une fenêtre de maintenance.
Pour de nombreux systèmes de production, il est plus sûr de désactiver le redémarrage automatique, sauf si le service est redondant, que des fenêtres de maintenance sont définies et que les contrôles d'intégrité après redémarrage sont automatisés.
4. Vérifiez les minuteurs systemd et effectuez un test à blanc
unattended-upgrades.timerSur une installation Debian standard basée sur systemd, vérifiez les minuteurs APT plutôt que de rechercher une unité inventée :
systemctl status apt-daily.timer apt-daily-upgrade.timer
systemctl list-timers apt-daily.timer apt-daily-upgrade.timer
apt-daily.timerest associé à l'activité de téléchargement/indexation de paquets de routine, tandis que apt-daily-upgrade.timerdéclenche le chemin de service de mise à niveau/nettoyage utilisé par les mises à niveau sans surveillance.
État du minuteur Systemd pour les tâches quotidiennes d'APT. Les dates affichées sont données à titre indicatif ; utilisez la commande `systemctl list-timers` pour connaître la date de la prochaine exécution sur votre système.
Ensuite, testez la politique sans modifier les paquets :
sudo unattended-upgrade --debug --dry-run
Il s'agit de la vérification préalable la plus utile, car elle évalue la configuration APT réelle et enregistre les détails de débogage. Consultez la sortie pour identifier les paquets qui seraient sélectionnés ou mis de côté, les origines tierces inattendues, les problèmes de dépendances et les invites relatives aux fichiers de configuration.
Si la simulation ne sélectionne rien, cela peut être tout à fait normal lorsque le serveur est à jour. Vérifiez qu'il y a bien des mises à jour en attente apt list --upgradable, puis comparez leurs origines et leur politique avec les modèles configurés.
5. Surveillez les mises à niveau automatiques et gérez les redémarrages de manière réfléchie.
Le paquet enregistre son journal d'activité principal et la sortie dpkg sous :
sudo tail -n 100 /var/log/unattended-upgrades/unattended-upgrades.log
sudo journalctl -u apt-daily-upgrade.service --since "7 days ago"
test -f /var/run/reboot-required && cat /var/run/reboot-required
Pour un ordinateur de laboratoire personnel, la consultation périodique des journaux peut suffire. Pour les systèmes d'entreprise, il est préférable de centraliser la surveillance des pannes ou de les envoyer à syslog afin qu'une erreur silencieuse du dépôt, un système de fichiers saturé, une dépendance rompue ou une interruption de l'état de dpkg ne passent pas inaperçus.
Paramètres de référence pour les politiques de serveur courantes
Scénario
Politique
Note opérationnelle
Serveur axé sur la sécurité
Autoriser les mises à jour de sécurité et de stabilité de Debian ; conserver le manuel de redémarrage
Bonne solution par défaut lorsqu'une panne est plus coûteuse qu'un redémarrage différé
nœud sans état ou redondant
Autoriser les mises à jour et le redémarrage automatique programmé
Associer à des contrôles de santé et à une vidange de l'équilibreur de charge
Appareil sensible au noyau
N’utilisez une liste noire de paquets qu’avec une procédure d’exception documentée.
Le blocage peut laisser des vulnérabilités connues non corrigées.
Serveur avec référentiel fournisseur
N’autorisez pas l’origine du fournisseur tant que sa politique de mise à jour n’a pas été examinée.
Vérifiez d'abord la signature, la politique de support et les attentes en matière de restauration.
Guide de dépannage rapide
Le minuteur est actif mais aucun paquet n'est installé.
Vérifiez s'il existe des mises à jour en attente, si leur origine correspond à votre politique d'autorisation et si une liste noire ou une contrainte de dépendance empêche la sélection. Privilégiez sudo unattended-upgrade --debug --dry-runles analyses factuelles plutôt que de modifier la politique au hasard.
Le serveur attend la configuration du paquet
unattended-upgradesCe système est conçu pour éviter les mises à jour nécessitant la résolution d'invites de configuration dpkg. Si un paquet est bloqué de manière répétée, consultez le journal et déterminez s'il convient de gérer manuellement la configuration.
Les mises à jour ne s'exécutent jamais après le clonage d'une image de machine virtuelle.
Vérifiez que les minuteurs sont activés et actifs, puis inspectez-les apt-config dump. Les images de référence contiennent souvent des fragments APT locaux, des masquages ou des substitutions de stratégie qui diffèrent des valeurs par défaut du paquet.
Vous devez désactiver les mises à jour automatiques.
Utilisez le chemin de reconfiguration pris en charge par Debian :
sudo dpkg-reconfigure -plow unattended-upgrades
La désactivation du paquet ne remplace pas la gestion normale des correctifs ; elle renvoie simplement la responsabilité à votre processus d’orchestration manuel ou externe.
Liste de contrôle de validation finale
unattended-upgradesest installé à partir d'un dépôt Debian de confiance.
Les valeurs de mise à jour périodique de la liste des paquets APT et de mise à niveau automatique sont activées.
La politique locale est stockée dans un fichier de remplacement ultérieur tel que 52unattended-upgrades-local.
Les origines autorisées ont été vérifiées par rapport à apt-cache policy.