problem s ukoncovanim rc scriptu v jailu pri rebootu

Miroslav Lachman 000.fbsd at quip.cz
Sat Dec 15 20:56:22 CET 2007


Dan Lukes wrote:

> Miroslav Lachman napsal/wrote, On 12/15/07 14:03:
> 
>>Mam tu nasledujici problem, se kterym si nevim rady
> 
> ...
> 
>>Napsal jsem si script, ktery mi pri bootu spousti weby pouzivajici 
>>Django jako FastCGI. Script v podstate funguje - dokud ho zkousim 
>>ovladat rucne (v jailu) volanim:
>>/usr/local/etc/rc.d/django-runfcgi.sh start
>>a vypinani pres
>>/usr/local/etc/rc.d/django-runfcgi.sh stop
> 
> ...
> 
>>Problem je v tom, ze pri rebootu stroje (a tim ukonceni jailu) se ten 
>>script patrne neprovede jak ma, jelikoz neodstrani pri vypinani PID file 
>>a tak po rebootu nedojde ke spusteni.
> 
> ...
> 
>>Hlavni otazka tedy zni - jak zjistit, co se tam deje pri tom vypinani 
>>jailu? 
> 
> 
> 	Mno, ja si dovolim "hlavni" otazku pozmenit. Podle me hlavni otazka zni 
> - co to je za nedomyslenost testovat to, zda bezi konkretni daemon podle 
> existence nejakeho souboru ?

Dobre, je to nedomyslenost, nicmene pro me je stale hlavni otazkou to, 
jak probiha ukoncovani procesu v jailu a jak debugovat rc scripty v jailu :)

> 	Damon (a nakonec, cely OS) muze byt ukoncen mnoha zpusoby z nichz 
> nektere nezajistuji, ze jakykoliv soubor bude "uklizen".
> 
> 	Pokud chces zajistit, ze aplikace bezi jen jednou a pritom si to 
> aplikace nezajistuje sama, pak se podivej na 'lockf'. Obzvlastni 
> pozornosti doporucuji posledni vetu prvniho odstavce sekce "DESCRIPTION"

lockf jsem do ted neznal, takze urcite diky za ponauceni.
Moc jsem z toho zatim nepochopil, jak bych to mel pouzit v pripade, kdy 
to startuju nasledujicim prikazem:
su "${_user}" -c "/usr/local/bin/python manage.py runfcgi `head -1 
django-runfcgi.conf` && echo -n ${site} "

a ukoncuji
su "${_user}" -c "kill ${_pid} && rm ${_pidfile} && echo -n ${site} "

ale s tim si jeste pohraju

Druhy problem je ovsem to, ze ten proces muze zastavit / spustit i 
uzivatel, pod kterym bezi (proto to su) ze sveho shellu.

Jak pak vlastne nalozit s tim lockf v takovem pripade?

Mirek



More information about the Users-l mailing list