Как запустить скрипт nohup с помощью upstart?
Я портирую некоторые служебные скрипты в стиле SysV для HBase (java-сервис) в upstart.
Скрипты sysv не вызывают java напрямую, но вместо звонка hbase-daemon.sh, Это start-stop-daemon подобный инструмент, который поставляется с пакетом, который тянет много конфигурации и в конечном итоге заканчивается nohup java ... & на самом деле запустить процесс в качестве демона.
Поскольку логика конфигурации в hbase-daemon.sh Я бы предпочел не изменять или переписывать его (чтобы удалить nohup) и вместо этого выскочки вызовите его напрямую.
Кажется, это то, что expect пункт для, за исключением того, что в моем случае это не работает. Даже с expect daemon (случай с двумя форками), я заканчиваю тем, что отслеживал неправильный pid при запуске службы. Это говорит о том, что мой сценарий слишком много nohup не должен быть обработан с expect или еще что-то еще.
Как я могу использовать upstart для управления сервисом, который ожидает запуска с помощью скрипта, который вызывает nohup?
1 ответ
Вы можете попробовать использовать crontab и ввести это в терминал:
crontab -f nohup
и затем введите это:
pyton(version) -v -f echo 'nohup' & disown
а затем введите это в терминале:
crontab reboot
и это может нормально работать таким образом.