Ubuntu Server 16.04: Supervisor kann nicht automatisch gestartet werden

42

Ich habe Supervisor auf Ubuntu Server 16.04 installiert.

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

Nach dem Neustart wurde der Supervisor nicht automatisch gestartet. Überprüfte den Status:

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

Ich bin nicht sicher, warum es inaktiv ist (tot). Was muss ich überprüfen, um es zu reparieren?

qinking126
quelle
2
Sieht aus wie Sie systemd verwenden. Hilft diese Antwort von askubuntu ?
Jeff Schaller
1
@ JeffSchaller vielen Dank. es hilft. Alles was ich brauche ist "systemctl enable SERVICE.service"
auszuführen

Antworten:

61

Ich bin überzeugt, dass dieses Problem ein Paketfehler im Supervisor-Paket in Ubuntu 16.04 ist und anscheinend durch die Umstellung auf systemd verursacht wurde:

  • Dieses Problem wurde bereits vorab im Issue-Tracker des Supervisor-Projekts (wo nichts behoben werden kann) in Problem 735 gemeldet .

  • Ich war vor ein paar Tagen von diesem Problem gebissen und war erstaunt, dass dieses Problem den Paketbetreuern nie gemeldet wurde, obwohl Ubuntu 16.04 vor einiger Zeit veröffentlicht wurde und dies die Abwärtskompatibilität und das erwartete Verhalten beeinträchtigt. Aus diesem Grund habe ich beschlossen, das Problem den Paketbetreuern in Fehler 1594740 zu melden .

Ich habe eine einfache Problemumgehung in Fehler 1594740 dokumentiert , bei der keine Konfigurationsdateien erstellt werden müssen. Sie müssen lediglich den Supervisor-Daemon nach der Installation des Pakets aktivieren und starten:

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

# Bring Supervisor up right now.
sudo systemctl start supervisor

Ich bin mir nicht sicher, ob dies in Ubuntu 16.04 behoben wird, aber zumindest gibt es jetzt einen zentralen Ort, an dem Beschwerden gesammelt und Problemumgehungen dokumentiert werden können (in Fehler 1594740 , nicht in Problem 735 ).

Wenn jemand von diesem Problem gebissen wurde, sollten Sie Ihre Bedenken in Fehler 1594740 äußern, um die Paketbetreuer davon zu überzeugen, dieses Problem zu beheben. Vielen Dank!

Update (24.03.2017): Gestern wurde aufgrund des Fehlers 1594740 ein Fix für dieses Problem auf xenial-updates veröffentlicht , sodass bei Neuinstallationen dieses Problem nicht mehr auftreten sollte.

xolox
quelle
1

Hier ist ein Beispiel für eine Datei, in die Sie Ihre / lib / systemd / system / einfügen können.

[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
Leonardo Bragatti
quelle
Der voreingestellte Ort für die Ubuntu-Konfiguration ist/etc/supervisord/supervisord.conf
Antti Haapala,
@AnttiHaapala Nicht für meine Ubuntu 16.04 Installation. Der richtige Ort ist: /etc/supervisor/supervisord.conf (beachten Sie das Fehlen von "d", wenn sich jemand wundert)
Rishi
@ Yoshi9143 Sie sind richtig: D
Antti Haapala
1

Ich habe es Supervisor entfernt und neu installiert. Dann hat es bei mir geklappt.

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
Anjaneyulu Batta
quelle
0

apt-get install supervisor unter Ubuntu 16.04.2 installiert den Supervisor 3.2.0 und startet automatisch beim Neustart.

pip install supervisor --Upgrade auf 3.3.1 und es startet überhaupt nicht mehr.

Das Upgrade funktioniert unter Ubuntu 16.04.1

bsrdjan
quelle
0

Am habe CentOSich es gelöst, indem ich beim Start einen Cron-Job ausgeführt habe, der läuft supervisord:

Erstellen Sie den Cron-Job, der crontab -eim Terminal ausgeführt wird, und fügen Sie ihn am Ende der Jobs ein @reboot /bin/supervisord( es muss sich um den Pfad zum Supervisord handeln ) und speichern Sie ihn.

ako
quelle