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