logout, ssh - cekani na ukonceni procesu spusteneho na pozadi

Dalibor Straka dast na panelnet.cz
Sobota Květen 29 16:53:18 CEST 2004


On Fri, May 28, 2004 at 04:10:31PM +0200, oldfrog.linux na volny.cz wrote:
> Tibor Zenis wrote:
> 
> >>naloguji se  pres ssh,  spustim demona
> >>a dam logout. Ten vsak neprobehne, ceka,
> >>dokud demon neskonci.
> >>
> >>Teprve kdyz damona z druhe ssh konzole
> >>ukoncim, logout se dokonci. Totozne chovani
> >>pozoruji i kdyz spustim demona pomoci exec
> >>nebo nohup. Cim to je zpusobene, jak provest
> >>logout s bezicim procesem na pozadi?
> >>
> >Uz to tu bolo riesene. Je to sposobene tym, ze ssh caka na ukoncenie
> >procesov, ktore maju vstup/vystup na terminal. Poznam 2 riesenia:
> >
> >nohup sleep 4 > /dev/null 2>&1 < /dev/null &
> >
> >alebo ukocit ssh pomocou Escape Characters (man ssh)
> >Tibor
> >
> No ja ziram, vazne to funguje. A jak je mozne, ze nektere
> demony lze bez presmerovani spustit? Resi presmerovani ve
> vlastni rezii?
> 

Ano, proste ty demony nepisou prasata.
1. fork
2a. child setsid
2b. parent exit
3. zavrit nepotrebne handly
   STDIN -> /dev/null
   STDOUT -> /dev/null
   STDERR -> /dev/null
   ty chytrejsi 
   STDOUT -> log/access.log
   STDERR -> log/error.log
   
Uz jsem videl i zrojak, ve kterem neudelali "setsid" a o kousek dal meli
napsano:
# Tady nam chodi SIGTERM a my nevime proc ;-(
ignore SIGTERM 

-- Dalibor Straka



Další informace o konferenci Linux