Serwer Ubuntu 16.04: nie można uzyskać od administratora, aby uruchomił się automatycznie


42

Zainstalowałem opiekuna na serwerze Ubuntu 16.04.

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

Po ponownym uruchomieniu nadzorca nie uruchomił się automatycznie. Sprawdzono 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

Nie jestem pewien, dlaczego jest nieaktywny (martwy). Co muszę sprawdzić, aby to naprawić?


2
Wygląda na to, że używasz systemd. Czy ta odpowiedź na pytanie zadaje pytanie?
Jeff Schaller

1
@JeffSchaller bardzo dziękuję. to pomaga. wszystko, czego potrzebuję, to uruchomić „systemctl enable SERVICE.service”
qinking126

Odpowiedzi:


61

Jestem przekonany, że ten problem jest błędem w pakiecie w pakiecie Supervisor w Ubuntu 16.04 i wydaje się, że został spowodowany przejściem na systemd:

  • Ten problem został już zgłoszony w narzędziu do śledzenia problemów projektu Supervisor (gdzie nic nie można naprawić) w numerze 735 .

  • Kilka dni temu ugryzł mnie ten problem i ze zdumieniem stwierdziłem, że ten problem nigdy nie został zgłoszony do opiekunów pakietów, mimo że Ubuntu 16.04 został wydany dość dawno temu, co psuje kompatybilność wsteczną i oczekiwane zachowanie. Dlatego postanowiłem zgłosić ten problem opiekunom pakietów w błędzie 1594740 .

Udokumentowałem proste obejście w błędzie 1594740, które nie wymaga tworzenia żadnych plików konfiguracyjnych - wystarczy włączyć i uruchomić demona Supervisora ​​po instalacji pakietu:

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

# Bring Supervisor up right now.
sudo systemctl start supervisor

Nie jestem pewien, czy zostanie to naprawione w Ubuntu 16.04, ale przynajmniej teraz jest centralne miejsce do zbierania skarg i obejść dokumenty (w błędzie 1594740 , nie w numerze 735 ).

Jeśli ktoś ugryzł ten problem, zastanów się nad zgłoszeniem błędu w błędzie 1594740, aby przekonać opiekunów pakietu do rozwiązania tego problemu. Dzięki!

Aktualizacja (24.03.2017): Wczoraj Poprawkę dotyczącą tego problemu został wydany do xenial-updates w wyniku błędu 1594740 więc nowe instalacje nie powinny już działać w tej kwestii.



1

Oto przykład pliku, w którym można umieścić plik / 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

domyślna lokalizacja konfiguracji ubuntu to/etc/supervisord/supervisord.conf
Antti Haapala

@AnttiHaapala Nie dla mojej instalacji Ubuntu 16.04. Prawidłowa lokalizacja to: /etc/supervisor/supervisord.conf (zauważ, że brak „d”, jeśli ktoś się zastanawia)
Rishi,

@ Yoshi9143 masz rację: D
Antti Haapala

1

Usunąłem go i ponownie zainstalowałem. Potem zadziałało dla mnie.

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 na Ubuntu 16.04.2, instaluje supervisor 3.2.0 i uruchamia się automatycznie po ponownym uruchomieniu.

nadzorca instalacji pip - zaktualizuj aktualizacje do wersji 3.3.1 i już się nie uruchamia.

Aktualizacja działa Ubuntu 16.04.1


0

On CentOSrozwiązałem go, uruchamiając zadanie CRON przy starcie, które działa supervisord:

aby utworzyć zadanie cron uruchomione crontab -ew terminalu, a następnie wklej @reboot /bin/supervisord( musi to być ścieżka do organu nadzorczego ) na końcu zadań i zapisz je.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.