[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: start-stop-daemon >>



On Mon, 06 Mar 2006 19:34:23 +0300
Artem Chuprina <ran@ran.pp.ru> wrote:

> Vladimir Zolotykh -> debian-russian@lists.debian.org  @ Mon, 6 Mar 2006 18:10:32 +0200:
> 
>  >>  >>  VZ> Можно ли как-то переназначить вывод задачи, запускаемой с помощью
>  >>  >>  VZ> start-stop-daemon из стартового скрипта системы?
>  >>  >> 
>  >>  >>  VZ> 	start-stop-daemon --start --background --quiet --exec $DAEMON \
>  >>  >>  VZ> 		-- -p 8001 >> /var/log/stat.log
>  >>  >> 
>  >>  >>  VZ> Сильно подозреваю что это переназначит вывод самого start-stop-daemon
>  >>  >>  VZ> а не запускаемой задачи. Мне же нужно переназначить вывод самой задачи.
>  >>  >>  VZ> Это можно сделать или единственный способ добавлять ключ --log-file и
>  >>  >>  VZ> программными средствами перенаправлять весь вывод туда?
>  >>  >> 
>  >>  >> Не единственный.  Можно сказать --exec /bin/sh -- -c "$DAEMON -p 8001 >>/var/log/stat.log".
>  >>  >> 
>  >>  VZ> Как насчет 
>  >>  VZ> start-stop-daemon --start --quiet --exec $DAEMON -- -p 8001 >> /var/log/stat.log &
>  >>  VZ> ?
>  >>  VZ> Будет ли это надежно работать ?
>  >> 
>  >> Нет, и использование start-stop-daemon при таком подходе совершенно лишнее.
>  VZ> Не совсем лишнее, он во всяком случае будет проверять запущена
>  VZ> задача или нет и не запустит повтоно.
> 
> И каким образом он при таком запуске будет это проверять?
Как точно он это делает не знаю, но он это делает (проверял).
В док. говорится according to /proc/PID/exe,
кроме того есть еще PIDFILE.
Реальные ключи с которыми тестировал такие
--pidfile $PIDFILE --make-pidfile --exec $DAEMON

> 
>  VZ> А когда это не будет работать?
> 
> При этом программа не отцепится от терминала.  В результате, если ты
> перезапустишь сервер из терминала и закроешь терминал, у тебя будут
> весьма неплохие шансы лишиться запущенного сервера.
Согласен, об этом не подумал, значит нужен ключ --background

С ключем --background другая трудность, для перенаправления нужен /bin/sh,
это же значит, что реально будет создано два процесса: sh и собственно полезный
процесс, "убийство" же sh родителя не приводит к "смерти" потомка так как тот
уже отсоединился.

> 
> -- 
> Artem Chuprina
> RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
> 
> Fill the difference...
> 
> 
> -- 
> To UNSUBSCRIBE, email to debian-russian-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> 


-- 
Vladimir Zolotykh



Reply to: