Хайо!Накрапал простенький скрип, который через tail анализирует лог файл и пишет результат в другой файл.
Хочу его запустить в качестве даемона, сделал значит так:#!/bin/sh
#
# PROVIDE: my_daemon
# REQUIRE: DAEMON
# Add the following line to /etc/rc.conf to enable `my_daemon':
#
# my_daemon_enable="YES". "/etc/rc.subr"
name="my_daemon"
rcvar=`set_rcvar`command="/path_to/my_daemon.sh"
pidfile="/var/run/my_daemon.pid"load_rc_config "$name"
: ${my_daemon_enable:="NO"}run_rc_command "$1"
Запускаю:
# /usr/local/etc/rc.d/my_daemon start
Starting my_daemon.и в таком состоянии висит (хотя и работает), т.е. недаемонизируется.
>[оверквотинг удален]
>load_rc_config "$name"
>: ${my_daemon_enable:="NO"}
>
>run_rc_command "$1"
>
>Запускаю:
># /usr/local/etc/rc.d/my_daemon start
>Starting my_daemon.
>
>и в таком состоянии висит (хотя и работает), т.е. недаемонизируется.а должен? вы же его запускаете без ключика, который позволяет любой процесс загнать в background) я про & :)
>а должен? вы же его запускаете без ключика, который позволяет любой процесс
>загнать в background) я про & :)Про & я знаю, но думал, что rc.subr сам разобрался бы добавлять его или нет.
Спасибо!P.S. Но вот pid файл не создался.
rc.subr не демонизирует за ... Смотри fork, setsid и close для std{in,out,err}. rc.subr также не пишет пид файлы, он особенно вообще ничего не делает, просто тупа екзекутит.
>rc.subr не демонизирует за ... Смотри fork, setsid и close для std{in,out,err}.
>rc.subr также не пишет пид файлы, он особенно вообще ничего не
>делает, просто тупа екзекутит.Да, уже понял, что полная чухня это.
В gentoo на порядок это лучше сделано.
>>rc.subr не демонизирует за ... Смотри fork, setsid и close для std{in,out,err}.
>>rc.subr также не пишет пид файлы, он особенно вообще ничего не
>>делает, просто тупа екзекутит.
>
>Да, уже понял, что полная чухня это.
>В gentoo на порядок это лучше сделано.что это? "особенный" bash?
>что это? "особенный" bash?Нет, там бинарник /sbin/runscript обрабатывает init скрипты.
и чем это лучше? фишка rc.d - это api. присваивая определенным переменным те или иные значения можно управлять поведением стартовых скриптов буквально одной строчкой. писать на С "обработчик скриптов" - все равно что писать на С веб приложения.вот нах"я говорить чухня, когда ты них"я не понимаешь?
Писать демона на шелл это круто :). В bg ты его конечно отправить можешь, можешь каналы закрыть дабы не гадил никуда, но ведь это еще не все.