Назад | Перейти на главную страницу

Как мне управлять длительным серверным процессом в Ubuntu?

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

Я ищу легкое решение, которое идеально работает с Ubuntu Server из коробки, без особой настройки.

Для Ubuntu я думаю Выскочка это то, что вы ищете.

https://askubuntu.com/questions/19320/how-to-enable-or-disable-services Этот вопрос AskUbuntu содержит отличную информацию о том, как начать то, что вы делаете.

Вкратце, скопируйте следующее в /etc/init/mybinary.conf.

description "My Binary"
author      "Jakub Arnold <Jakub.Arnold@example.com>"

start on (local-filesystems and net-device-up)
stop on runlevel [!2345]

respawn

pre-start script
   RUN_MODE="daemons"

end script

exec mybinary

Это должно помочь вам в следующем:

  • Управление услугами с помощью 'service mybinary start / stop / status'
  • Управление файлами PID
  • возрождается при аварии
  • запустить при загрузке
  • ведение журнала в /var/log/upstart/mybinary.log

Поваренная книга Upstart - вся необходимая информация: http://upstart.ubuntu.com/cookbook/

В стороне, я чувствую, что должен упомянуть, что Ubuntu планирует отказаться от Upstart в пользу Systemd, но никакой дорожной карты не изложено.