A máquina Solaris em que desenvolvemos a maior parte do nosso desenvolvimento tem o hábito irritante de esgotar o tempo limite das sessões SSH. Não importa se o cliente é minha área de trabalho Ubuntu, minha área de trabalho Solaris ou minha área de trabalho do Windows (massa); o fator comum é a grande máquina Solaris.
Existe algo que eu possa fazer para impedir que isso aconteça? É irritante quando você faz uma pausa para o almoço e as sessões de terminal abertas e configuradas com delicadeza são todas congeladas, então você precisa matá-las todas e restabelecer todo o seu contexto.
Eu descobri que o comportamento keepalive não funcionou muito bem. Tentei adicionar o ServerAliveInterval ao script ~ / .ssh / config, mas ele não funciona bem com o git.
O que acabei fazendo foi adicionar um carimbo de data / hora à minha barra de status da 'tela'. Isso é atividade suficiente para manter a conexão ativa.
fonte
Você também pode configurar o Putty para enviar pacotes keep alive.
Em Configurações, Conexão, Segundos entre keepalives.
fonte
Primeiro, você precisa determinar se é o seu shell que está desconectando você ou o ssh. Para testar, ssh em sua máquina remota e vi ou menos um arquivo.
Se, muito tempo depois, você ainda puder mover menos / vi, o ssh está bom. Nesse caso, determine qual shell você está usando e desative o tempo limite. É mais provável que o shell esteja atingindo o tempo limite e não o SSH. No entanto, alguns firewalls fecharão as sessões inativas se o Keep Alive não for enviado.
O administrador do Solaris pode impedir que você desative o tempo limite no seu shell, tornando a configuração somente leitura. Isso é improvável, mas possível. Geralmente, você pode contornar isso usando um shell diferente.
fonte
Se você tiver problemas para reconfigurar seu shell novamente, poderá usar a tela GNU. Se a sua sessão SSH atingir o tempo limite, faça o login novamente e reconecte-se e seu shell será exatamente como era.
fonte
Se você executar o tcsh na máquina Solaris, a variável de saída automática poderá ser definida. Se você definir esse valor como 0 (definir autologout = 0) ou desabilitar (desabilitar autologout), ele interromperá o logout.
fonte
Pode ser um arenque vermelho, mas tente
no seu prompt de shell. Isso certamente funcionou para mim no passado, mas não me lembro se é restrito a certas arquiteturas (ou shells).
fonte
Digite seu perfil de shell
fonte
Você poderia correr
top
em outro terminal? Isso deve gerar tráfego regular?fonte
Spinner parece a solução perfeita para o seu problema. Periodicamente, envia caracteres em sua sessão para evitar que o tempo limite se esgote.
fonte
Eu sempre tive sucesso com o 'ClientAliveInterval 300' em servidores linux / bsd.
fonte
Verifique sua
sshd
configuração para linhas como estas em/etc/ssh/sshd_config
:fonte