Могу ли я узнать, запущена ли моя служба при инициализации системы или пользователем с помощью служебной команды?
В моей службе мне нужно сделать другую логику (в сценарий запуска службы), если служба запускается автоматически или по команде пользователя.
Спасибо
Если услуга ON
в chkconfig
list, он запускается init.
Если услуга OFF
в chkconfig
список и служба находятся в запущенном состоянии, затем запускаются с уровня пользователя.
Если я правильно понимаю, вы ищете 'chkconfig --list', в котором будут перечислены все зарегистрированные службы в /etc/init.d/*. Другие служебные команды можно запускать из /etc/init.d, но нельзя добавлять в chkconfig, из /etc/rc.local и из / etc / inittab.
Если пользователи используют sudo или su root, я не думаю, что вы можете сказать, но я думаю, что вы можете это сделать:
добавьте команду, которая ищет время безотказной работы сервера - если время безотказной работы очень низкое, так как он только начинается, вы можете ПРИНЯТЬ, что это запуск сервера, и выполнить логику вокруг него.
uptime | awk '{print $3}' # prints the minutes since the host is up