dbus

13/02/2015 - 18:50 von Dr. Harry Knitter | Report spam
Hallo liebe Freunde von der Liste,

ich hab mal eine Frage dbus betreffend.
Zu dem Daemon kam kürzlich ein Update, das mir auf einem Desktop-Rechner einen
Neustart des Systems angezeigt hat. Also kein Problem, am Abend fàhrst Du die
Kiste eh runter und am nàchsten Morgen ist alles gelaufen.
Wie schaut es aber bei einem Server aus. Muss ich den neu starten, damit dbus
auch auf der neuen Version làuft, oder würde es auch reichen dbus neu zu
starten (vor Allem, was passiert da)?
In anbetracht, der neueren Kernel-Entwicklungen, dass Kernel-Patches in
Zukunft auch ohne Neustart möglich sein sollten, kommt mir die Sache mit dbus
irgendwie wie ein Anachronismus (ich möche hier nur unterschwellig einfließen
lassen, dass mich das an Windows erinnert ;-(( ) vor.
Könnte mich und auch sicherlich andere fragende Debian- (Linux-) Benutzer und
Admins aufklàren, was den Hintergrund betrifft?

Viele Grüße

Harry


Zum AUSTRAGEN schicken Sie eine Mail an debian-user-german-REQUEST@lists.debian.org
mit dem Subject "unsubscribe". Probleme? Mail an listmaster@lists.debian.org (engl)
Archive: https://lists.debian.org/201502131844.34557.harry@knitter-edv-beratung.de
 

Lesen sie die antworten

#1 Harald Weidner
13/02/2015 - 22:40 | Warnen spam
Hallo,

ich hab mal eine Frage dbus betreffend.
Zu dem Daemon kam kürzlich ein Update, das mir auf einem Desktop-Rechner einen
Neustart des Systems angezeigt hat. Also kein Problem, am Abend fàhrst Du die
Kiste eh runter und am nàchsten Morgen ist alles gelaufen.

Wie schaut es aber bei einem Server aus. Muss ich den neu starten, damit dbus
auch auf der neuen Version làuft, oder würde es auch reichen dbus neu zu
starten



Für das Update von dbus reicht es, dbus neu zu starten.

ABER: bei dem aktuellem Update ist auch die libdbus ausgetauscht worden.
Hierfür muss man alle Prozesse neu starten, die diese Lib dynamisch linken.
Debian kann zwar in begrenztem Umfang Dienste erkennen, bei denen das der
Fall ist, und diese neu starten. Aber es können auch Programme betroffen
sein, die von Hand gestartet wurden und kein Start-/Stoppskript haben.

Man kann diese Prozesse über das /proc Filesystem finden. Aber einfacher ist
es, den Server zu rebooten.

(vor Allem, was passiert da)?



Der Neustart von dbus dürfte auf einem Server keine großen Auswirkungen
haben. dbus steht halt ein paar Sekundenbruchteile nicht zur Verfügung, u.U.
geht ein in dieser Zeit eintreffendes Ereignis verloren. dbus wird
hauptsàchlich von Desktop-Umgebungen benutzt, im Serverumfeld ist das eher
wenig verbreitet.

In anbetracht, der neueren Kernel-Entwicklungen, dass Kernel-Patches in
Zukunft auch ohne Neustart möglich sein sollten, kommt mir die Sache mit dbus
irgendwie wie ein Anachronismus (ich möche hier nur unterschwellig einfließen
lassen, dass mich das an Windows erinnert ;-(( ) vor.



Das hat sich ja vielleicht bald erledigt, wenn dbus durch kdbus ersetzt
worden ist. ;-)

Aber im Ernst, es gibt keinen generischen Mechanismus, mit dem man von außen
einem laufenden Prozess seine Shared Libraries austauschen kann. Und da der
Prozess mit den Libs den virtuellen Adressraum teilt und beliebig Pointer
auf Funktionen oder Datenstrukturen der Lib speichern kann, ist ein solcher
Mechanismus auch schwer vorstellbar. Aber es gibt durchaus Wege, mit denen sich
ein Serverdienst neu starten kann, ohne dass ein Request verloren geht.

Ein Beispiel, wie sowas geht, kann man hier nachlesen:
http://grisha.org/blog/2014/06/03/g...in-golang/
Der Artikel bezieht sich auf Go, aber der Mechanismus funktioniert auch mit
anderen Sprachen.

Gruß, Harald


Zum AUSTRAGEN schicken Sie eine Mail an
mit dem Subject "unsubscribe". Probleme? Mail an (engl)
Archive: https://lists.debian.org/

Ähnliche fragen