problem s ukoncovanim rc scriptu v jailu pri rebootu
Miroslav Lachman
000.fbsd at quip.cz
Sun Dec 16 01:08:04 CET 2007
Dan Lukes wrote:
> Miroslav Lachman napsal/wrote, On 12/15/07 23:29:
[...]
>>Jinak tedy aby to s tim lockf melo smysl (chapu-li to spravne), tak ho
>>musi pouzivat i ten uzivatel, ktery si spravuje svuj web. Tedy i on
>>misto puvodniho:
>>python manage.py runfcgi `head -1 django-runfcgi.conf`
>>bude muset spoustet
>>lockf -t 0 tmp/django-runfcgi.lock python manage.py runfcgi `head -1
>>django-runfcgi.conf`
>
>
> A on ten uzivatel opravdu pise na prikazove radce takovehle zbesilosti
> ? Ja bych ocekaval, ze tohle cele ma napsane v nejakem scriptu, ktery
> vola aniz zna/zkouma jeho obsah. Takze to, ze se jeho obsah zmeni ani
> nezjisti.
Pokud je mi znamo, tak to tak opravdu pousti, ale neni problem uzivateli
predhodit hotovy script s vysvetlenim "takhle ho spoustej a takhle ho
ukoncuj".
> Ale zpet k otazce - ano, musi.
>
> "Normalni" by bylo, kdyby program, ktery je napsan tak, ze ma bezet jen
> jednou, protoze jinak je to problem, mel v sobe nejakou vhodnou pojistku
> zabudovanou sam (napriklad zamek, stejne jako to dela lockf). U sitovych
> serveru tomu nejcasteji brani to, ze dva nemohou soucasn eotervit socket
> stejneho cisla.
Nevim, jak je to tam zarizene, ale vim, ze kdyz jsem ten script pro
spusteni napoprve napsal a nekolikrat spustil, tak jsem pak mel v
systemu nekolik fastcgi procesu a jejich rodic pak nemel to PID, ktere
bylo ulozeno v PID file a tak to pak cele neslo zastavit jednoduchym
kill `cat tmp/django-runfcgi.pid`. Proto jsem tam pak dopisoval tu
kontrolu existence PID a...
> Kdyz uz se ale stalo, ze ji v sobe nema a "dobastlovava" se to tam
> externe, musi vsichni hrat hru se stejnymi pravidly aby to fungovalo.
Osobne s Django nepracuju, takze ho neznam nijak dopodrobna, ale co mi
rukama prosel manual, tak tenhle zpusob spousteni je oficialni a z mych
zkusenosti si to nijak dobre nehlida, ze bezi jen jedina "instance".
Podobny script mam i pro mongrel pro Ruby On Rails a tam to hlidane je a
celkove je to dotazene vic k "dokonalosti", takze puvodne jsem si
myslel, ze jen vezmu svuj existujici script pro mongrel a napasuju ho na
django, ale nachazim v tom cim dal tim vic nedostatku ;o(
> Jinak jeste jednou radsi pripominam, ze se ten script musi spustit tak,
> aby se sam nedaemonizoval - a takze bude ten lock potreba spoustet v
> ramci startovaciho scriptu na pozadi.
Nastesti to tak pustit lze (vim, ze jsou i programy, co automaticky
daemonizuji a "nelze" se tomu vyhnout)
>>muzeme jit spat
>
> Jak kdo ;-)
No taky tu jeste neco tak na hodinku mam :)
Mirek
More information about the Users-l
mailing list