Portál AbcLinuxu, 16. července 2025 18:48


Dotaz: automatický restart služby

26.9.2006 12:12 Slávek Pařenica
automatický restart služby
Přečteno: 582×
Odpovědět | Admin
Dobrý den, omlouvám se, jestli již zde podobný dotaz zazněl, v linuxu nejsem příliš sběhlý a nyní řeším následující problém.. Používám Gentoo linux na kterém se pomocí init.d skriptu startuje služba (aplikace) která se stará o sdílení určitých datových zdrojů.. Nicméně po určité době dochází k selhání a následnému ukončení této aplikace a služba je až do manuálního opětovného spuštění neaktivní. Prosím, zda by někdo byl schopen pomoci mi vymyslet nějaký hlídací mechanismus této služby (/etc/init.d/cardshare) který by zajistil opětovné spuštění služby v případě jejího pádu...Ev. jestli je možné nějakým způsobem toto zadefinovat přímo v parametrech služby. Děkuji všem za pomoc. Můj emailový kontakt je slavek007lbc@seznam.cz
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.9.2006 12:37 anon123 | skóre: 35 | blog: ganomi
Rozbalit Rozbalit vše Re: automatický restart služby
Odpovědět | | Sbalit | Link | Blokovat | Admin

Asi bych se nejdrive zajimal, proc ta sluzba pada, tedy prosel bych logy.

Situace se da resit napsanim scriptiku a dat ho do cronu.

26.9.2006 12:40 SlávekLBC
Rozbalit Rozbalit vše Re: automatický restart služby
já bych strašně rád nějak vyzkoumal proč padá - ale nepodaří se mi to odchytit - jedná se o malý binární soubůrek, jehož kody nejsou k dispozici a který negeneruje ani žádný log. - hledal jsem i jinou variantu podobného programu, ale bohužel jsem neuspěl :( Možná pád loguje přímo systém, ale to nevím a nevím kde to hledat :( Jak říkám - v linuxu jsem jelito, ale postupně (pomalu ale jistě) se učím :)
26.9.2006 13:25 Jardo
Rozbalit Rozbalit vše Re: automatický restart služby
ak je to binarka, tak ju spusti cez strace a uvidis kde to padne.
26.9.2006 13:31 SlávekLBC
Rozbalit Rozbalit vše Re: automatický restart služby
ono je to slozitejsi :) jedna se o aplikaci na sdileni karty pro satelit - ta bezi jednou dva dny, jednou jeden, pak havaruje. Problem je, ze situaci musim vyresit velmi rychle kdyz nastane. Zjistim ze spadla protoze treba pretekl zasobnik, ale stejne to nevyresim, aby se to neopakovalo :) takze musim vyresit co nejrychlejsi mozne znovuzavedeni programu :)

Ale diky moc - strace neznam podivam se co to je a co to umi :)
26.9.2006 13:37 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: automatický restart služby
Odpovědět | | Sbalit | Link | Blokovat | Admin
Podívejte se na daemontools. Spustí zadaný příkaz, čeká, dokud se neukončí, pak ho po 1 sekundě pustí znova atd., dokud příslušnou službu nezastavíte.
26.9.2006 13:42 Radek Podgorny | skóre: 16
Rozbalit Rozbalit vše Re: automatický restart služby
...anebo radeji mnohem lepsi (IMHO) upgrade runit, ktery je mimochodem s daemontools kompatibilni. V Gentoo balik je (pouzivam ho na vsech svych Gentoo strojich - tedy vsech strojich :-) ).
26.9.2006 14:03 SlávekLBC
Rozbalit Rozbalit vše Re: automatický restart služby
Děkuji moc - právě zkoumám jak to nastavit - myslím, že je to přesně to co jsem potřeboval :)
26.9.2006 14:22 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: automatický restart služby
Můžete napsat, v čem se runit od daemontools liší?
26.9.2006 15:07 martyone
Rozbalit Rozbalit vše Re: automatický restart služby
Jen taková úvaha.. neumí to samé i "obyčejný" init? Kdo spouští znova a znova getty, když se odhlásím?
Není to pravda moc "čisté", ale..
29.9.2006 11:53 SlávekLBC
Rozbalit Rozbalit vše Re: automatický restart služby
Dobrý den, nainstaloval jsem daemontools a "v podstatě" funguje, ale problém nastává v tom, že hlídaná služba se z mně neznámého důvodu spustí několikrát - program hlásí cyklicky chybu: cannot execute /sbin/runsvdir-start - nevím co tato chyba znamená ale každé "vypsání" této chyby spustí opětovně hlídanou službu - takže se zahlcuje paměť pc.. Nevíte někdo prosím co s tím?
29.9.2006 12:12 SlávekLBC
Rozbalit Rozbalit vše Re: automatický restart služby
Jeden problém jsem zjistil a chybovou hlášku už to nepíše, ale stále se mi "hlídaná" služba spouští několikrát což je nežádoucí, protože pak nefunguje korektně
29.9.2006 14:01 LesTR | skóre: 17 | Plzeň
Rozbalit Rozbalit vše Re: automatický restart služby
Nejspise si ta vase aplikace nevytvari zamecek.
Nejlepsi je, si na spousteni vytvorit nejaky skript, ktery si vytvori zamecek nekde napr. ve /var/lock/, do nej ulozi PID procesu ($! jestli si dobre vzpominam). Mno a pri dalsim spusteni staci overit napr. pomoci if [ -f zamek ] jestli existuje zamecek, pokud ano, tak zjisti napr. pomoci ps aufx|grep PID, jestli proces bezi.
A pokud bezi, tak nespoustet, pokud nebezi tak spustit.
Jiste si nejaky zameckovy system vytvorit dokazete, toto je jen ilustrativni, pouzivam to v nekolika vecech a funguje to dobre.
Save The World - http://www.worldcommunitygrid.org/ LesTR
29.9.2006 14:14 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: automatický restart služby
Pod daemontools nejsou potřeba takovéhle zámečky. daemontools program nespustí znovu, dokud ten program běží na popředí. Váš program se zřejmě odklízí na pozadí (jako démon). Buď jej přinutíte běžet na popředí (nějakým parametrem), nebo se řiďte FAQ How can I supervise a daemon that puts itself into the background?
29.9.2006 15:20 LesTR | skóre: 17 | Plzeň
Rozbalit Rozbalit vše Re: automatický restart služby
Pod daemontools nejsou potřeba takovéhle zámečky....

Tak to mam velke nedostatky, jdu se ridit heslem RTFM :) Pokud si toto opravdu korektne ohlida, zacnu jej pouzivat. Diky.
Save The World - http://www.worldcommunitygrid.org/ LesTR
29.9.2006 14:17 SlávekLBC
Rozbalit Rozbalit vše Re: automatický restart služby
Odpovědět | | Sbalit | Link | Blokovat | Admin
Děkuji, zdá se, že už to funguje správně - problém se zdá být vyřešený - uvidím za pár dnů.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.