server ubuntu 16.04: tidak dapat membuat penyelia memulai secara otomatis

43

Saya menginstal supervisor di server ubuntu 16.04.

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

Setelah reboot, penyelia tidak memulai secara otomatis. Memeriksa 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

Saya tidak yakin mengapa itu tidak aktif (mati). Apa yang harus saya periksa untuk memperbaikinya?

qinking126
sumber
2
Sepertinya Anda menggunakan systemd. Apakah jawaban askubuntu ini membantu?
Jeff Schaller
1
@ JeffSchaller terima kasih banyak. itu membantu. yang saya butuhkan adalah menjalankan "systemctl aktifkan SERVICE.service"
qinking126

Jawaban:

61

Saya yakin bahwa masalah ini adalah bug pengemasan dalam paket Supervisor di Ubuntu 16.04 dan sepertinya disebabkan oleh peralihan ke systemd:

  • Masalah ini sudah dilaporkan di bagian hulu pada pelacak masalah proyek Pengawas (di mana tidak ada yang dapat diperbaiki) dalam edisi 735 .

  • Saya digigit oleh masalah ini beberapa hari yang lalu dan terkejut menemukan bahwa masalah ini tidak pernah dilaporkan ke pengelola paket, meskipun Ubuntu 16.04 dirilis beberapa waktu yang lalu dan ini merusak kompatibilitas dan perilaku yang diharapkan. Inilah sebabnya saya memutuskan untuk melaporkan masalah ini ke pengelola paket di bug 1594740 .

Saya mendokumentasikan solusi sederhana dalam bug 1594740 yang tidak memerlukan file konfigurasi apa pun untuk dibuat - Anda hanya perlu mengaktifkan dan memulai daemon Supervisor setelah menginstal paket:

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

# Bring Supervisor up right now.
sudo systemctl start supervisor

Saya tidak begitu yakin bahwa ini akan diperbaiki di Ubuntu 16.04 tetapi setidaknya sekarang ada tempat sentral untuk mengumpulkan keluhan dan mendokumentasikan penyelesaian masalah (dalam bug 1594740 , tidak dalam edisi 735 ).

Jika ada yang tergigit oleh masalah ini, pertimbangkan untuk menyuarakan kekhawatiran Anda dalam bug 1594740 untuk meyakinkan pengelola paket untuk memperbaiki masalah ini. Terima kasih!

Pembaruan (2017-03-24): Kemarin perbaikan untuk masalah ini telah dirilis ke pembaruan xenial sebagai hasil dari bug 1594740 sehingga instalasi baru seharusnya tidak lagi mengalami masalah ini.

xolox
sumber
1

Berikut adalah contoh file di mana Anda dapat meletakkan / 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
Leonardo Bragatti
sumber
lokasi konfigurasi ubuntu default adalah di/etc/supervisord/supervisord.conf
Antti Haapala
@AnttiHaapala Bukan untuk instal ubuntu 16.04 saya. Lokasi yang benar adalah: /etc/supervisor/supervisord.conf (perhatikan kekurangan "d" jika ada yang bertanya-tanya)
Rishi
@ Yoshi9143 Anda benar: D
Antti Haapala
1

Saya telah menghapusnya dan menginstalnya lagi. Kemudian itu berhasil untuk saya.

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
sumber
0

apt-get install supervisor di Ubuntu 16.04.2, instal supervisor 3.2.0 dan dimulai secara otomatis saat reboot.

atasan instalasi pip --upgrade ke 3.3.1 dan tidak memulai lagi sama sekali.

Pembaruan berfungsi Ubuntu 16.04.1

bsrdjan
sumber
0

Pada CentOSsaya memecahkannya dengan menjalankan pekerjaan cron pada startup yang berjalan supervisord:

untuk membuat cron job dijalankan crontab -edi terminal dan kemudian menempel @reboot /bin/supervisord( itu harus path ke supervisor ) di akhir pekerjaan dan simpan.

ako
sumber