Problema com SSH “Falha na gravação: cano quebrado” [duplicado]

3

Eu corro um programa no servidor com SSH ! o programa é executado normalmente e depois de um período de tempo recebo uma mensagem Write failed: Broken pipe e o programa para.

O que isso significa por favor? e qual é a solução?

Eu li em: O que que a mensagem Broken pipe significa em uma sessão SSH?

Que eu possa superar este problema para atualizar meu servidor (e reiniciar o seu sshd)

echo "ClientAliveInterval 60" | sudo tee -a /etc/ssh/sshd_config

Ou no lado do cliente:

echo "ServerAliveInterval 60" >> ~/.ssh/config

Mas como torná-lo ilimitado? não apenas 60 segundos!

Obrigado

    
por user15992 22.05.2012 / 09:00

2 respostas

7

Experimente man sshd_config e man ssh_config .

ClientAliveInterval

Sets a timeout interval in seconds after which if no data has been received from the client, sshd(8) will send a message through the encrypted channel to request a response from the client. The default is 0, indicating that these messages will not be sent to the client. This option applies to protocol version 2 only.

e

ServerAliveInterval

Sets a timeout interval in seconds after which if no data has been received from the server, ssh(1) will send a message through the encrypted channel to request a response from the server. The default is 0, indicating that these messages will not be sent to the server, or 300 if the BatchMode option is set. This option applies to protocol version 2 only.

Eu evitaria usar

echo "ClientAliveInterval 60" | sudo tee -a /etc/ssh/sshd_config

pessoalmente. O parece ser uma maneira desajeitada e arriscada de atualizar o sshd_config. Gostaria apenas de sudo vi e ver qual é a configuração existente para ClientAliveInterval, se presente.

Por fim, acredito que você esteja interpretando mal o que essas configurações fazem. Eles não deixam cair a conexão após esse tempo, eles enviam uma mensagem de keep alive após esse tempo para encorajar ambas as extremidades da conexão, e quaisquer firewalls intermediários, para acreditar que a conexão ainda está ativa e deve ser mantida aberta.

    
por 22.05.2012 / 10:50
1

Se você continuar tendo esse problema, suspeito que sua conexão de rede é instável e talvez você deva procurar problemas de estabilidade do seu lado - talvez você esteja em um Wifi com baixa intensidade de sinal.

Uma ótima maneira de evitar que o programa seja interrompido é usando um multiplexador de terminal como GNU Screen ou tmux . Eles abrem uma sessão em segundo plano no seu servidor, que não é fechada se você perder a conexão ou efetuar logout - você pode sempre anexar novamente a essas sessões depois de se reconectar ao servidor.

    
por 22.05.2012 / 15:39

Tags