Supervisorctl ERROR (нет такого процесса)

Я видел этот вопрос раньше, но ни одно из решений не сработало для меня.

У меня возникают проблемы с использованием диспетчера на моем rpi b+. Каждый раз, когда я пытаюсь запустить мой процесс, я получаю сообщение об ошибке:

pi @raspberrypi ~ $sudo supervisorctl start server

server: ERROR (нет такого процесса)

У меня есть файл конфигурации, установленный в /etc/supervisord.conf

[program:server]
directory=/home/pi/ledticker
command=/usr/bin/python NetworkServer.py
autostart=false
autorestart=true
stopsignal=QUIT

[supervisord]
logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log)
logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB)
logfile_backups=10 ; (num of main logfile rotation backups;default 10)
loglevel=info ; (log level;default info; others: debug,warn,trace)
pidfile=/tmp/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
nodaemon=false ; (start in foreground if true;default false)
minfds=1024 ; (min. avail startup file descriptors;default 1024)
minprocs=200 ; (min. avail process descriptors;default 200)

[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket

[unix_http_server]
file=/tmp/supervisor.sock ; (the path to the socket file)

Я попытался выполнить команды перечитания, обновления, перезагрузки, но они не сработали. Любые идеи?

Ответ 1

Вам следует попытаться перезагрузить supervisord:

# supervisorctl reload
[y/N] ? y

Во многих случаях эта ошибка разрешается перезагрузкой.

Ответ 2

Раньше я сталкивался с такой же проблемой. Это было решением следующих решений. Сначала отредактируйте файл supervisord.conf и добавьте строки ниже:
[unix_http_server]

file=/tmp/supervisor.sock

chmod=0777
  • сначала запустите службу SupervisorD, используя следующую команду:

    $ sudo /usr/bin/supervisord -c /etc/supervisord.conf
    
  • Вы можете проверить, используя: ps -ef | grep python

  • После запуска супервизора, попробуйте запустить свою программу, используя следующую команду:

    $ sudo /usr/bin/supervisorctl -c /etc/supervisord.conf start all
    

Ответ 3

На моей Fedora22 я изменил строки ниже в /etc/supervisord.conf:

[include]
files = supervisord.d/*.ini

к

[include]
files = supervisord.d/*.conf

а затем перезагрузите

Ответ 4

В некоторых версиях супервизора раздел [include] не работает, вам нужно добавить программы в основной файл конфигурации супервизора в /etc/supervisord.conf

Ответ 5

В случае многостадийного процесс экземпляров конфигурации полного имени процесса может выглядеть server:server_0 (зависит от вашего process_name шаблона). Пытаться:

sudo supervisorctl restart server:*

В противном случае вы получите ту же ошибку (без такого процесса).