Executando tarefas no servidor remoto via SSH - ciclo de vida?

0

Duas perguntas relacionadas:

  1. Se eu fizer ssh em um servidor remoto e iniciar uma tarefa longa em primeiro plano ( :~$ ./my-task > out.log ), o processo continuará a ser executado quando minha conexão com o servidor terminar?

  2. A mesma tarefa longa da questão # 1 leva cerca de 5 minutos para ser executada. Se eu abrir outra janela de terminal e brincar com o arquivo para o qual a saída está sendo enviada ( tail -f out.log | grep 'Loop count' ), isso pode afetar o tempo que levará my-task para concluir?

por rodrigo-silveira 23.09.2016 / 14:17

1 resposta

1

Quando você mata sua conexão com seu servidor, a tarefa será encerrada. Eu uso Tmux para esse tipo de coisa.

Você pode instalá-lo da maneira normal.

sudo apt-get install tmux

A idéia é que você use ssh no seu servidor, depois com o shell tmux e conecte-o a um console virtual tmux. Comece suas coisas saindo do console tmux virtual, desconecte-as e mate sua conexão com o servidor.

O console virtual tmux permanecerá em execução, assim como todas as suas coisas dentro desse console. Você pode se conectar ao seu servidor e anexar / desanexar de tmux consoles à vontade.

O Tmux tem meia página man decente, mas aqui estão algumas dicas para você seguir em frente.

tmux ls list executando sessões tmux.

tmux attach -t 0 anexar a 0.

ctrl-B c cria um terminal.

crtl-B d desanexar um termianl.

ctrl-B " terminal de divisão verticalmente.

ctrl-B % termina o terminal horizontalmente.

arrows navegue pelos painéis.

0-9 seleciona janelas.

s alterna as sessões.

Espero que ajude como titular.

    
por hatterman 23.09.2016 / 14:28