сценарий init, который регистрирует вывод сценария

Я видел, что OpenManage может на самом деле разрушить сервис SNMP Окна. Это является довольно угнетающим, действительно.

5
задан 16 October 2011 в 15:43
2 ответа

Попробуйте следующее:

/var/customDaemon >> /var/log/customDaemon.log 2>&1 &

Я предлагаю вам запустить службу с обычным пользователем вместо root .

Чтобы показать [OK] , [FAILED] , вы можете проверить статус выхода, примерно так:

/var/customDaemon >> /var/log/customDaemon.log 2>&1 &
RETVAL=$?
[ $RETVAL = 0 ] && echo -ne '\t\t\t\t\t[  \033[32mOK\033[0m  ]\n'

Вы также можете взглянуть на предварительно определенные функции в /etc/rc.d/init .d / functions : демон , killproc , action , ...

/var/customDaemon >> /var/log/customDaemon.log 2>&1 &
RETVAL=$?
[ $RETVAL = 0 ] && action $"Starting customDaemon... " /bin/true
8
ответ дан 3 December 2019 в 01:15

Замените / dev / null именем файла для ведения журнала.

start() {
    echo "Starting customDaemon"
    /var/customDaemon > /var/log/customDaemon/console.log &
    return 0
}

Я также изменил код возврата, потому что, если он может запуститься, он должен вернуть 0 - в случае успеха.

качество init-скрипта в порядке. Происходит не так уж много неприятностей, и у вас есть lsb-функции, что очень хорошо.

Что можно улучшить, это если приложение поддерживает перенаправление ведения журнала, чтобы вы могли правильно обернуть вещи с помощью logrotation.

Также было бы хорошо, если бы вы проверили, успешно ли запущен демон, и выдали бы ошибку (и выход 1) в случае неудачи.

1
ответ дан 3 December 2019 в 01:15

Теги

Похожие вопросы