Ubuntu teilt mir mit, dass ich Pakete zum Aktualisieren habe, wenn ich dies nicht tue

18

Ich habe einen Server, auf dem ich mich nie in der X-Anzeige anmelde, nur über ssh. Kürzlich habe ich mich eingeloggt und es hat mir gesagt, dass ich es getan habe

12 packages can be updated.
6 updates are security updates.

Das wusste ich eigentlich schon, weil ich munin darauf und auf all meinen anderen Servern laufen habe. Also trotzdem habe ich "sudo aptitude" gemacht und alle Updates installiert und dann neu gestartet. Ein paar Tage später teilte mir Munin mit, dass ich ein anderes Paket upgraden müsse, also loggte ich mich ein, aber die Login-Nachricht lautete:

12 packages can be updated.
6 updates are security updates.

Ich ging in Eignung und installierte das eine Update. Ubuntu sagt mir immer noch, dass ich 12 Pakete aktualisieren muss. Munin sagt, ich habe keine. Ich habe es versucht aptitude -d -y dist-upgradeund apt-get -d -y dist-upgradebeide sagen mir, dass es nichts zu installieren gibt. Warum sagt mir die Login-Information immer noch, dass ich 12 Pakete aktualisieren muss?

Paul Tomblin
quelle
Hast du es sudo aptitude updatenochmal gemacht? Nur um sicherzugehen, dass es aktualisiert wird;) Außerdem kann sudo aptitude safe-upgradees hilfreich sein, aptitude genau wie apt-get mit den Befehlszeilenargumenten zu verwenden. aptitudeAlleine die interaktive Benutzeroberfläche, die ich persönlich kenne, wird von einer guten Gruppe von Benutzern nicht verwendet .
Thomas Ward
@Evil, es ist nicht Eignung, die das Problem hat, es ist das, was Ubuntu verwendet, um zu melden, wie viele Pakete aktualisiert werden müssen. aptitude hat die 12 Paketupdates vor einigen Tagen installiert.
Paul Tomblin
1
FWIW, ich sehe jetzt dasselbe Problem unter Ubuntu 10.10. Vielleicht ein Bug?
Grm
Ja, könnten Sie einen Fehler dazu melden? und auf diese Frage verlinken.
Jeremy Bicha
Unter Trusty 14.04.3 LTS wurden diese Meldungen durch Ausführen von "sudo aptitude safe-upgrade" entfernt, während dies bei "sudo apt-get upgrade" nicht der Fall war.
Beebee

Antworten:

10

Es ist ein Fehler in Initskripten , der in Natty behoben wurde und den aktuellen Status von motdto kopiert /etc/motd.tail. motdwird beim Booten dynamisch generiert, motd.tailist jedoch statisch (sodass ein Sysadmin einige feste Informationen für alle Benutzer dort ablegen kann).

Durch Löschen motd.tailwird das Problem vorübergehend behoben. Eine bessere Lösung ist jedoch die Erstellung eines leeren Dokuments motd.tail. Wenn die Datei nicht vorhanden ist, wird sie möglicherweise beim initscriptsUpgrade erneut (falsch) erstellt .

Erstellen Sie eine leere motd.tailmit

sudo touch /etc/motd.tail
Dave Jennings
quelle
2
Ich sehe das gleiche Problem in 12.04.2 LTS und es gibt keine /etc/motd.tailDatei; nur /etc/motd, die den beleidigenden Text enthält. Der Zeitstempel ("Systeminformationen ab ...") ist korrekt, die Anzahl der aktualisierbaren Pakete jedoch nicht.
Lambart
6

Das Problem scheint in der Logik zu liegen, in /usr/lib/update-notifier/update-motd-updates-availableder entschieden wird, dass es keinen Grund gibt, /usr/lib/update-notifier/apt-check --human-readablebasierend auf Zeitstempeln für /var/lib/update-notifier/updates-availableund sources.list und einigen anderen Dateien auszuführen .

Ich bin nicht sicher, was der eigentliche Fehler ist, aber das Entfernen der zwischengespeicherten Datei hat es zumindest auf 0 Updates zurückgesetzt, obwohl Gott nur weiß, ob es die richtige Nummer anzeigen wird, wenn Updates verfügbar sind.

Paul Tomblin
quelle
1

Wenn es nur die Login-Nachricht (motd) ist, die Ihnen sagt, dass die Pakete aktualisiert werden müssen, kann es sein, dass sie update-motdeine Weile nicht mehr ausgeführt wurden. Versuchen Sie, das update-motdProgramm auszuführen, und melden Sie sich dann erneut an, um festzustellen, ob das Problem dadurch behoben wird. Die Datei / etc / motd sollte neu generiert werden.

Rich Adams
quelle
Paketinformationen für update-motd sagen: "Die Funktionalität, die früher von diesem Paket bereitgestellt wurde, ist jetzt in pam_motd in libpam-Modulen integriert."
Paul Tomblin
1

Auf einigen Systemen hatte ich falsche Berichte über zu aktualisierende Pakete gesehen, aber auch 2 Zeilen 'Ubuntu 10.04.2 LTS' und 'Ubuntu 10.04.1 LTS', obwohl ich am 10.04.2 war.

Wie Karl sagte, enthielt /etc/motd.tail den alten Text und das Löschen löste das Problem für mich perfekt

Gordon Williams
quelle
1

Ich habe das gleiche Problem am 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) ...

Es gibt jedoch keine Nachwörter für das Befehlszeilentool update-motd und ich kann nichts über pam_motd finden.

Das Entfernen der /etc/motdNachricht hat dazu geführt, dass die Nachricht nicht mehr angezeigt wird, aber das Safe-Upgrade sollte dies offensichtlich bereits getan haben.

Steve Steiner
quelle
1

Überprüfen Sie, ob /etc/motd.taildie Aktualisierungsnachrichten enthalten sind. Wenn ja, entfernen Sie sie.

Karl Napf
quelle