сервер ubuntu 16.04: не вдається отримати автоматичний запуск супервайзера


42

Я встановив супервізор на сервері ubuntu 16.04.

$ sudo apt-get install supervisor
$ sudo update-rc.d supervisor defaults

Після перезавантаження керівник не запустився автоматично. Перевірив статус:

qinking126@nas:~$ sudo service supervisor status
[sudo] password for qinking126:
● supervisor.service - Supervisor process control system for UNIX
   Loaded: loaded (/lib/systemd/system/supervisor.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: http://supervisord.org

Я не впевнений, чому це неактивний (мертвий). Що потрібно перевірити, щоб виправити це?


2
Схоже, ви використовуєте systemd. Чи допомагає ця відповідь askubuntu ?
Джефф Шаллер

1
@JeffSchaller велике дякую це допомагає. все, що мені потрібно, це запустити "systemctl enable SERVICE.service"
qinking126

Відповіді:


61

Я переконаний, що ця проблема є помилкою в упаковці в пакеті Supervisor в Ubuntu 16.04 і, здається, це було викликано переходом на systemd:

  • Про цю проблему вже повідомлялося вище в трекері випуску проекту Supervisor (де нічого не виправити) у випуску 735 .

  • Мене покусало це питання кілька днів тому, і я здивовано виявив, що про цю проблему ніколи не повідомляли сервісні пакети, хоча Ubuntu 16.04 вийшов досить давно, і це порушує сумісність та очікувану поведінку. Ось чому я вирішив повідомити про цю проблему для технічного обслуговування пакунків у помилці 1594740 .

Я задокументував просту помилку в помилці 1594740 , яка не потребує створення файлів конфігурації - потрібно просто включити і запустити демон Supervisor після установки пакета:

# Make sure Supervisor comes up after a reboot.
sudo systemctl enable supervisor

# Bring Supervisor up right now.
sudo systemctl start supervisor

Я не дуже впевнений, що це буде виправлено в Ubuntu 16.04, але принаймні зараз є центральне місце для збору скарг та вирішення документів (у помилці 1594740 , а не у випуску 735 ).

Якщо когось вкусила ця проблема, подумайте про те, щоб висловити свою стурбованість помилкою 1594740, щоб переконати технічного обслуговування пакетів вирішити цю проблему. Дякую!

Оновлення (2017-03-24): вчора було випущено виправлення цієї проблеми на xenial-updates внаслідок помилки 1594740, тому нові установки більше не повинні працювати з цією проблемою.



1

Ось приклад файлу, куди ви можете помістити свій / lib / systemd / system /

[Unit]
Description=Supervisord Service

[Service]
Restart=on-failure
RestartSec=42s
User=ubuntu
ExecStart=/usr/local/bin/supervisord -n -c /etc/supervisord.conf

[Install]
WantedBy=multi-user.target

місцезнаходження конфігурації ubuntu за замовчуванням/etc/supervisord/supervisord.conf
Antti Haapala

@AnttiHaapala Не для моєї установки ubuntu 16.04. Правильне розташування: /etc/supervisor/supervisord.conf (відзначте відсутність "d", якщо хтось цікавиться)
Rishi

@ Yoshi9143 ви маєте рацію: D
Антті Хаапала

1

Я видалив її супервізор і знову встановив. Тоді це працювало на мене.

sudo apt-get purge supervisor
sudo apt-get install supervisor
cp path/to/file.conf /etc/supervisor/conf.d/
sudo supervisorctl reread
sudo supervisorctl update

0

apt-get install supervisor на Ubuntu 16.04.2, встановлює Supervisor 3.2.0 і він автоматично запускається при перезавантаженні.

pip install supervisor - оновіть оновлення до 3.3.1, і він більше не запускається.

Оновлення працює Ubuntu 16.04.1


0

На цьому CentOSя вирішив, запустивши роботу cron при запуску, який працює supervisord:

щоб створити роботу cron, запустіть crontab -eв терміналі, а потім вставте @reboot /bin/supervisord( це повинен бути шлях до нагляду ) в кінці завдань і збережіть його.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.