Skip to content

Restart check ...

linux Wenn auf einem Linux-System Updates eingespielt werden, beispielsweise von Bilbiotheken, die von vielen Programmen benutzt werden, dann werden die neu installierten Libraries erst benutzt, wenn ein neues Programm gestartet wird. Alle bereits laufenden Programme nutzen noch die Bibliothek, die vor dem Update vorhanden war.

Um festzustellen, welche Programme das sind, gibt es unter CentOS das Skript needs-restarting, es ist im Paket yum-utils zu finden. Unter Debian und Ubuntu heisst das Skript checkrestart und ist im Paket debian-goodies zu finden.

Es lohnt sich, diese Skripte direkt nach einem Update auszuführen, um sich nicht in falscher Sicherheit zu wiegen.

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

-thh am :

*Zusätzlich zu "checkrestart" gibt es ab Debian Jessie auch "needrestart" oder "whatmaps". Derzeit wird wohl "needrestart" als beste Lösung empfohlen.

Eine Liste aller bekannten Lösungen gibt's in https://lists.debian.org/debian-devel/2015/01/msg00314.html

Axel am :

*Hallo tth,

danke für den Hinweis auf das Posting auf debian-devel. Als Co-Maintainer von debian-goodies (checkrestart) und hobbit-plugins (das ebenfalls solch einen Test für das Hobbit/Xymon Monitoring-System beinhaltet) und needrestart-Benutzer musste ich da direkt noch antworten, auch einen Monat drauf noch.

Je nach Einsatzzweck sind da unterschiedliche Tools zu empfehlen. Hier kurz mal die Alleinstellungsmerkmale:


  • checkrestart: Vermutlich älteste Implementierung, gewachsen, steckt viel Know-How drin. Braucht bis inkl. Jessie noch lsof, ab Stretch (Jessie+1) wird's auch ohne gehen. Vorteile: Merkbar schneller als needrestart (gerade getestet: 5s vs 51s) und (IMHO) gut lesbarer Output.
  • needrestart: Wird per Default als APT-Hook aufgerufen (d.h. nach jeder Paketinstallation oder -aktualisierung) und fragt per Default (und sofern mit einem Terminal verbunden) interaktiv nach, welche Dienste neugestartet werden sollen und welche nicht (mit sinnvollen Defaultwerten). Vorteile: Man kann konfigurieren, dass es Dienste automatisiert neustartet ohne nachzufragen. Braucht kein lsof. Es läuft auf dpkg/APT-, RPM- und Pacman(*)-basierten Systemen und ist nicht Debian-spezifisch. Nachteile: Eher langsam, zieht kurzfristig viel CPU und macht entsprechend einen kleinen Peak in der Load. Listet keine User-Prozesse auf.
  • needrestart-session: Löst das letztgenannte Problem, ist aber erst ab Jessie+1 in Debian verfügbar. Es informiert den User einerseits auf jedem Terminal über veraltete Prozesse, die mit diesem Terminal verbunden sind wie auch unter X über die Notify-Schnittstelle des Desktops oder Window-Manager über die Liste aller veralteten Prozesse dieses Users. (Gleicher Autor wie needrestart.)
  • "libs"-Check aus hobbit-plugins: Reines Monitoring-Plugin für Hobbit/Xymon, ob Prozesse mit nicht mehr aktuellen, aber noch geladenen Bibliotheken laufen. Für Nagios/Icinga gibt's vermutlich was ähnliches.


whatmaps scheint in der Technik etwas anders als needrestart zu funktionieren und ist IIRC etwas flotter. IIRC bietet es auch einen Aufruf via APT-Hook an. Genauer habe ich es mir aber noch nicht angeschaut, da ich eigentlich mit needrestart recht zufrieden bin. Deswegen hier auch keine Bewertung von whatmaps. Der Upstream-Autor von needrestart ist übrigens auch immer sehr offen für Verbesserungsvorschläge. Entsprechend konnte ich schon den einen oder anderen Wunsch meinerseits dort unterbringen.

(*) Needrestart hatte mal einen lustigen Bug: Beim Schreiben eines Bugreports gegen das Paketes suchte es alle lokal installierten Paketmanager, egal, auf welcher Linux-Distribution, da IIRC die Testsuite dabei ausgeführt wird. Ist ja auch prinzipiell gut so, denn RPM kann man ja auch auf Debian installieren. Den Arch-Linux-Paketmanager PacMan gibt's allerdings noch nicht für Debian. Dafür gibt's unter /usr/games/pacman das gleichnamige und gut bekannte Spiel Pacman. Und das wurde gefunden und ausgeführt. Was glaubt Ihr, wie blöd ich geschaut habe, als beim Versuch einen Bug-Report schreiben plötzlich ein X-Fenster mit Pacman darin hochpoppte. Da wurde gleich der nächste Bug-Report fällig. :-)

Dirk Deimeke am :

*Vielen Dank, Axel, für den langen Bericht und auch Danke für die Werbung für mein Blog ;-)

Staniek Tobias am :

*Hello,
ist ein wirklich guter Tipp, denn ich habe einen Raspberry Pi am laufen, das ich von der Ferne in mein Netzwerk komme. Dieser wird daher im Normalfall nicht ein und ausgeschaltet. Jetzt habe ich gesehen das ich mit "checkrestart" erfahren kann ob nach einem Update ich einen Neustadt des Systems oder zumindest der einzelnen Dienste veranlassen muß.
Werde mir auch bei Gelegenheit die anderen in den Kommentaren angesprochenen Skripte eimal ansehen, jedoch fürs erste ist Dirk's Empfehlung welches ich regelmäßig durchführen werde.
Danke für die Tollen Tips,
Gruß Tobias

Kommentar schreiben

Gravatar, Favatar, Pavatar, Identica, Twitter, MyBlogLog Autoren-Bilder werden unterstützt.
BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
:'(  :-)  :-|  :-O  :-(  8-)  :-D  :-P  ;-) 
Formular-Optionen