Você pode usar byobu
se no sistema Debian (Ubuntu). Ele mantém sua sessão totalmente ativa mesmo quando você fecha sua conexão SSH
.
Estou tentando configurar o Supervisord em um servidor RHEL onde não tenho acesso root. Quando eu SSH no servidor e executar supervisord, tudo parece funcionar corretamente: supervisord e os dois programas que ele inicia não aparecem quando eu executar ps, mas aparecem quando eu executo ps -A. Eu posso ver a saída dos programas, o supervisorctl relata que eles estão rodando, etc. No entanto, uma vez que eu saio da sessão SSH, o supervisord e os dois programas cliente são eliminados, não aparecem mais em ps -A, etc. Não há nenhum evento no arquivo de log do supervisord quando saio da sessão SSH e estou executando o supervisord com o nodaemon = false no arquivo de configuração (veja abaixo). Há algo que estou fazendo errado ou que tenha configurado incorretamente no arquivo de configuração? Deixe-me saber se detalhes adicionais são necessários.
Comando que uso para iniciar o supervisord:
/home/foo/.local/bin/supervisord
Saída de ps -f
:
UID PID PPID C STIME TTY TIME CMD
foo 1 0 0 09:11 ? 00:00:00 -jailshell
foo 53 1 0 09:11 ? 00:00:00 ps -f
[unix_http_server]
file=/tmp/supervisor.sock ; the path to the socket file
[supervisord]
logfile=/home/foo/logs/supervisord.log ; main log file; default
$CWD/supervisord.log
logfile_maxbytes=50MB ; max main logfile bytes b4 rotation; default 50MB
logfile_backups=10 ; # of main logfile backups; 0 means none, default 10
loglevel=trace ; log level; default info; others: debug,warn,trace
pidfile=/home/foo/.local/supervisord.pid ; supervisord pidfile; default supervisord.pid
nodaemon=false ; start in foreground if true; default false
minfds=50 ; min. avail startup file descriptors; default 1024
minprocs=25 ; min. avail process descriptors;default 200
directory=/home/foo/foo_bar/ ; default is not to cd during start
; The rpcinterface:supervisor section must remain in the config file for
; RPC (supervisorctl/web interface) to work. Additional interfaces may be
; added by defining them in separate [rpcinterface:x] sections.
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
; The supervisorctl section configures how supervisorctl will connect to
; supervisord. configure it match the settings in either the unix_http_server
; or inet_http_server section.
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket
; The sample program section below shows all possible program subsection values.
; Create one or more 'real' program: sections to be able to control them under
; supervisor.
[program:foo]
command=/home/foo/foo_bar/foo.py ; the program (relative uses PATH, can take args)
[program:bar]
command=/home/foo/foo_bar/bar.py ; the program (relative uses PATH, can take args)
Você pode usar byobu
se no sistema Debian (Ubuntu). Ele mantém sua sessão totalmente ativa mesmo quando você fecha sua conexão SSH
.
Tags ssh linux supervisord