CentOS 5.5 - запуск сервисов

Могу ли я узнать, запущен ли мой сервис при инициализации системы или пользователь запустил команду service?

В моем сервисе мне нужно сделать другую логику (в сценарий запуска службы), если служба запускается автоматически или по команде пользователя.

Спасибо

3 ответа

Решение

Если пользователи используют sudo или su root, я не думаю, что вы можете сказать это, но я думаю, что вы можете сделать это:

Добавьте команду, которая ищет время безотказной работы сервера - если время безотказной работы очень и очень мало, так как оно только начинается, вы можете предположить, что это запуск сервера, и вы будете делать логику вокруг него.

uptime | awk '{print $3}' # prints the minutes since the host is up

Если услуга ON в chkconfig список, он запускается init.

Если услуга OFF в chkconfig список и сервис находятся в запущенном состоянии, затем он запускается с уровня пользователя.

Если я правильно понимаю, вы ищете 'chkconfig --list', который перечислит все зарегистрированные сервисы в /etc/init.d/*. Другие сервисные команды могут быть запущены из /etc/init.d, но не могут быть добавлены в chkconfig, из /etc/rc.local и из / etc / inittab.

Другие вопросы по тегам