Depois de sair da conexão ssh, o processo é interrompido / expirado

2

Estou executando um script python em segundo plano em um servidor ssh do Ubuntu. %código% Depois de um certo período de tempo, talvez meia hora, o script python pára de funcionar quando eu volto para o servidor e digito ps. Não tenho certeza porque. Eu não quero que isso nunca acabe.

    
por John 21.11.2013 / 19:12

1 resposta

4

Os processos em uma sessão SSH pertencem ao processo do seu shell; normalmente: sshd [your-username] tty[your-tty] .

Quando você mata sua sessão, todos os processos filhos também são encerrados.

Para contornar isso, use multiplexação de terminal ou daemons.

Os multiplexadores mais comuns são a tela e tmux .

Você iniciaria a tela usando o screen -S my-session-name e executando o processo normalmente.

Você pode então pressionar ctrl + a , d para desanexar da tela, e o processo ainda estará em execução, mas como filho de tela, não sua sessão ssh

Para reconectar, digite screen -x my-session-name (-r também funciona)

    
por 21.11.2013 / 19:15