putty anula o processo ao desligar

2

Estou de volta, então a questão é simples. Depois que eu me conectei ao servidor via putty eu quero executar algum comando. Suponha que o comando seja executado por muito tempo (por exemplo, extraindo arquivos de um arquivo grande ou de um backup mysql). Existe uma maneira de executar um comando de tal forma que ele será abortado depois que eu fechar a massa!

obrigado antecipadamente!

    
por Eugeny89 17.06.2011 / 18:23

3 respostas

10

A melhor maneira é executar screen , executar seu comando e, em seguida, desanexar usando ^A, D . Quando voltar para a sua máquina, execute screen -r e sua sessão será reconectada assim que você a deixou. A tela também pode fazer muito mais, confira a página de manual para ver o que é possível.

    
por 17.06.2011 / 18:26
5

Existe um pacote chamado "screen" que precisa ser instalado no host em que você está logado. Isso não tem nada a ver com putty, ou ssh - é assim que os shells Unix funcionam. Quando você desconecta um shell, você está desconectado e todos os seus processos recebem um sinal HUP. A maioria dos processos (todos) é encerrada. "Screen" faz com que o seu shell continue em execução, para que você possa se reconectar mais tarde.

    
por 17.06.2011 / 18:27
4

Sim! Você deve conhecer o processo e rejeitá-lo.

Então, se eu quisesse executar o comando "foo", faria nohup foo & && disown . O nohup o impede de morrer quando SIGHUP é enviado para ele e envia a saída para um arquivo, e o disown remove a referência pai para que ele não morra quando o shell de desova aparecer.

    
por 17.06.2011 / 18:27

Tags