problem s ukoncovanim rc scriptu v jailu pri rebootu

Dan Lukes dan at obluda.cz
Sat Dec 15 21:36:17 CET 2007


Miroslav Lachman napsal/wrote, On 12/15/07 20:56:
> 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} "

Zredukujme ho na zakladni prikaz, ktery se snazime spustit:

/usr/local/bin/python manage.py runfcgi `head -1 django-runfcgi.conf`

to je ten prikaz, ktery se pokousime modifikovat.

Takze pred nej dame
lockf -t 0 /var/run/django.lock PUVODNI_PRIKAZ

	Mame jediny problem - metoda "externiho zamykani" je zavisla na tim, ze 
lockf vi kdy spousteny program konci. TO znamena, ze se nesmi sam 
zdaemonizovat. Jak se to zajisti u tohohle konkretniho prikazu nevim - 
je to treba najit.

	Ale kdyz jsme programu zabranili se zdaemonizovat, musime zaridit, aby 
nam nezustal viset na popredi, coz by zablokovalo zbytek spousteciho 
procesu. Takze za cele to lockf ... puvodni_prikaz jeste pridat ampersand.

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

	Ukoncovani se nemeni.

> Jak pak vlastne nalozit s tim lockf v takovem pripade?

	Vlastne nijak zvlast - tak jako se pod 'su' spoustel puvodni prikaz, 
tak ted se spusti s tim lockf pred sebou a ampersandem za sebou.

	Jedine co jsem ted v myslenkach neladil a nedoladil je ono "echo" 
oznamujici puvodni spusteni, ale to mi pripada jako mene podstatna 
tresnicka - to uz si doladis, ja bych to asi proste ozelel ...

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

... jsem tak uplne nepochopil duvod proc, ze je tam to 'su' ?

	Kdo zadava heslo, na ktere se to 'su' zepta ?



					Dan


-- 
Dan Lukes                                               SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz, dan at (kolej.)mff.cuni.cz



More information about the Users-l mailing list