Autonahozeni deamona
Matus fantomas Uhlar
uhlar na fantomas.sk
Čtvrtek Červen 3 09:04:03 CEST 1999
Michal Krause <mike na navrcholu.cz> wrote:
->> ->> > cas od casu mi sleti jeden deamon, nez zjistim pricinu, rad bych, aby ho
->> ->> > skript v pripade padu znovu nastartoval. Neexistuje nejake osetreni primo v
->> ->> > rc.d ?
->> ->> spustat ho z inittabu ako respawn... pozor, treba ho donutit aby sa
->> ->> neforkoval, inac sa pusti milion krat...
->>
->> to je horsie.... init aspon zisti ze sa deje cosi nekale takze spusti max 5
->> instancii toho procesu (a potom da na par minut disable, potom to urobi zase
->> a disable).
->>
->> zatial co vas skript by v pripade forkovania za chvilu zabil masinu, hoci aj
->> PIII/500
-> To je pravda, ale puvodne slo o to, ze demon _obcas_ spadne, takze je IMHO
-> podobne reseni celkem vyhovujici. Samozrejme, ze se nehodi vzdy a vsude. U
-> respawnu by asi zase mohl byt problem s tim, ze v dobe nahozeni jeste nebezi
-> vsechno (napr. dejme tomu, ze ten demon pracuje s SQL serverem), ne?
asi ste si neprecitali poriadne o co islo ;)
islo o to ze ked spustite niektore demony, ony sa forknu, parent quitne a
ostane child a vam sa zda ako keby proces skoncil. lenze neskoncil. a keby
ste toto spustili opakovane v skripte alebo v inite ako respawn, coskoro sa
namnozia demony na pozadi, zatial co parenty vzdy quitnu a skript verzus
init ich spusti znova.
zatal co init asi po piatom ukonceni zisti ze nie je vsetko v poriadku,
vypapuluje varovanie ze nieco blblne, a spustanie procesu na par minut
stopne, shell skript bude spustat kym budu volne procesy v systeme. A to ho
zabije.
Priklad: squid sa dodava so skriptom RunCache ktory spusta squida dookola.
ak sa vsak 5 krat za sebou ukonci squid prirychlo, RunCache quitne s
hlaskou:
if test $failcount -gt 5 ; then
echo "ate: RunCache: EXITING DUE TO REPEATED FREQUENT FAILURES"
exit 1
init robi to iste ale nequitne po 5 neuspecnych pokusoch, ale pocka 5 minut
a ide to toho zase. zatial mozete fixnut inittab alebo zabezpecit aby
program nequitoval.
JE som si kedysi davno prerobil skript RunCache na RunSquid ktory spustil
squida so spravnymi parametrami a s presmerovanim vystupu iba raz, a skript
RunSquid som spustal z initu. Pacilo sa mi to viacej...
--
Matus "fantomas" Uhlar, sysadmin at Telenor Internet Kosice, Slovakia
BIC coord for *.sk; admin of netlab.irc.sk; co-admin of irc.felk.cvut.cz
"Where do you want to go to die?" [Microsoft]
Další informace o konferenci Linux