J'ai un serveur sur lequel je ne me connecte jamais à l'affichage X, uniquement via ssh. Récemment je me suis connecté et il m'a dit que j'avais
12 packages can be updated.
6 updates are security updates.
En fait, je le savais déjà car j’utilise munin sur ce serveur et sur tous mes autres serveurs. Donc de toute façon, j'ai fait "Sudo aptitude" et installé toutes les mises à jour, puis redémarré. Quelques jours plus tard, munin m'a dit que je devais mettre à jour un autre paquet, alors je me suis connecté, mais le message de connexion disait:
12 packages can be updated.
6 updates are security updates.
Je suis allé dans aptitude et installé la mise à jour. Ubuntu me dit toujours que j'ai 12 paquets à mettre à jour. Munin dit que je n'en ai pas. J'ai essayé aptitude -d -y dist-upgrade
et apt-get -d -y dist-upgrade
et tous deux me disent qu'il n'y a rien à installer. Alors, pourquoi les informations de connexion me disent-elles que j'ai 12 packages à mettre à jour?
C'est un bug dans initscripts , corrigé dans Natty, qui copie l'état actuel de motd
dans /etc/motd.tail
. motd
est généré dynamiquement à chaque démarrage, mais motd.tail
est statique (permettant à un administrateur système de placer des informations fixes à cet emplacement pour tous les utilisateurs).
La suppression de motd.tail
résoudra le problème temporairement, mais une meilleure solution consiste à créer un motd.tail
vide. Si le fichier n'existe pas, il peut être créé de nouveau (incorrectement) lorsque initscripts
est mis à niveau.
Créez un motd.tail
avec
Sudo touch /etc/motd.tail
Le problème semble être la logique de /usr/lib/update-notifier/update-motd-updates-available
qui décide qu'il n'y a aucune raison d'exécuter /usr/lib/update-notifier/apt-check --human-readable
en fonction des horodatages de /var/lib/update-notifier/updates-available
et de sources.list et de quelques autres fichiers.
Je ne sais pas quel est le bogue, mais la suppression du fichier en cache a au moins réinitialisé le nombre de mises à jour à 0, bien que Dieu sache s'il affichera le nombre correct lorsqu'il y a des mises à jour disponibles.
J'ai récemment répondu à une question similaire sur Serverfault:
La bannière dont vous parlez s'appelle MOTD (Message du jour). Cela semble être n bogue qui peut être contourné en supprimant le fichier /etc/motd.tail
.
Vérifiez si /etc/motd.tail
contient les messages de mise à jour. Si oui, supprimez-les.
Sur plusieurs systèmes, j'avais vu des rapports incorrects de paquets à mettre à jour, mais aussi deux lignes 'Ubuntu 10.04.2 LTS' et 'Ubuntu 10.04.1 LTS' alors que j'étais sur 10.04.2.
Comme Karl l'a dit, /etc/motd.tail contenait l'ancien texte et sa suppression résout parfaitement le problème.
J'ai le même problème le 10.04.2.
# aptitude install update-motd
Selecting previously deselected package update-motd.
(Reading database ... 36453 files and directories currently installed.)
Unpacking update-motd (from .../update-motd_3.5-0ubuntu1_all.deb) ...
Removing any system startup links for /etc/init.d/update-motd ...
Setting up update-motd (3.5-0ubuntu1) ...
Mais il n'y a pas d'ultime outil de ligne de commande update-motd et je ne trouve rien sur pam_motd.
Supprimer le /etc/motd
a fait disparaître le message, mais il est évident que la mise à niveau en toute sécurité aurait déjà dû le faire.
Si c'est simplement le message de connexion (motd) qui vous indique que les paquets doivent être mis à jour, alors il se peut que update-motd
n'ait pas été exécuté depuis un moment. Essayez de lancer update-motd
, puis de vous reconnecter pour voir si cela résout le problème. Il faut régénérer le fichier/etc/motd.