Como faço para sair/desconectar do SSH depois de iniciar um processo com saída para mantê-lo em execução?

Como faço para sair/desconectar do SSH depois de iniciar um processo com saída para mantê-lo em execução?

Executei um script na linha de comando hoje (php, não tenho certeza se isso importa) que tem uma saída que eu queria assistir, mas tive que ir para casa antes de terminar e não consegui descobrir como sair sem interromper o script. Normalmente eu apenas fecho o laptop (hiberno), mas não parece que o script foi concluído.

Existe alguma combinação de teclado que eu possa pressionar para sair do terminal e deixar o script em execução? Ele também imprime um arquivo de log para que eu possa verificá-lo mais tarde.

Responder1

O método mais direto para que seus scripts continuem após o encerramento de uma sessão shell é usar um programa multiplexador de terminal. Um multiplexador de terminal permitirá que você execute várias sessões de shell simultaneamente sem estar ativamente conectado a cada uma delas, mesmo depois de desconectar (desconectar) delas. Os 2 mais populares são screene tmux.

Eu pessoalmente uso screene funciona extremamente bem para mim. Você inicia uma screensessão, inicia seu programa/script, desconecta (desconecta) e depois se reconecta à sessão desanexada para ver como as coisas correram.

Para instalar:

sudo apt-get install screen

Para iniciar uma sessão:

screen  

Para desconectar (desconectar) da sessão:

Ctrl+ Aentãod

Para listar sessões em execução:

screen -ls

Para se reconectar a uma sessão desanexada, use a saída descreen -ls

screen -r [pid.tty.host]

Estes são apenas o básico para você começar, mas como sempre, man screentem muito mais informações

informação relacionada