[linux-l] Weltzeituhr

Frank Reker frank at reker.net
Mi Nov 8 01:33:04 CET 2006


Am Tue 07. Nov 2006 23:13 +0000 schrieb Steffen Dettmer:

>* Frank Reker wrote on Tue, Nov 07, 2006 at 05:31 +0100:
>
>> dann mit exec den daemon so aufrufen, dass er sich nicht selbst in den
>> hintergrund forked (viele daemonen haben ja einen solchen parameter).
>
>Warum, soll er sich doch forken; nur das PID-File darf er nicht

wenn er sich forkt, dann stimmt aber die pid im pid-file nicht mehr ;-)
ok, man koennte sagen, man killt einfach das prog, dass das pid-file
offen haelt - unabhaengig von der wirklichen pid.


>überschreiben (kann man ggf. ein anderes nehmen).  Allerdings machen
>meine Daemons immer ein setsid, weiss nicht, ob das alle machen,

standard. erst forken, dann filedeskriptoren 0,1,2 nach /dev/null
umlenken, setsid aufrufen und nochmal forken um ganz sicher zu gehen,
dass man eine eigene processgroup hat.


>vermutlich schon, dann kriegt man den natürlich schlecht gekillt, weil

daemonen killt man ja eh als root, oder mit der selben uid wie der
daemon selbst. also ist das ja egal. oder wolltest du auf's cascading
kill hinaus?


>> allerdings gehen einige daemonen am anfang hin und schliessen erst mal
>> alle offenen filedeskriptoren.
>
>Ja, normal, stört doch nicht, weil er ja nur seinen geerbten schliessen
>kann - das Orginalwrappertool hält seinen dennoch offen wenn es vor'm
>exec forkt.

und was nutzt das dann. dann weiss man, dass die pid im pid-file zum
wrapper tool gehoert, und kann dieses killen, aber was ist dann mit dem
daemon? die idee war ja nicht, dass das wrapper tool am laufen bleibt,
sondern nur die arbeit des daemonisierens und pid-file schreibens dem
daemon abnimmt. dann sich selbst durch exec mit dem eigentlichen daemon
ersetzt. dadurch haelt der daemon das pid-file offen, wenn er nicht
hingeht und alle offenen fd's schliesst.




-- 
Don't worry be happy ...
Ciao Frank
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 189 bytes
Beschreibung: nicht verfügbar
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20061108/d25abc58/attachment.sig>


Mehr Informationen über die Mailingliste linux-l