Problema com o ssh && apt-get, preciso de conselhos

1

Eu decidi tirar o pó do meu Beaglebone Black Rev.C e percebi que antes de fazer muita coisa, eu deveria ter tudo atualizado. Eu criei um cartão SD com a nova imagem Debian 8.3 e instalei-o. Não tem problema.

O uso do TeraTerm da minha máquina com Windows 8.1 para o ssh no BBB ficou mal comigo, aparentemente sendo inicializado pelo servidor ssh. Ugh. Então, eu inicio uma VM Kali Linux e ssh a partir daí. Basicamente o mesmo. Edite /etc/ssh/ssh_config e adicione ServerAliveInterval 60 . Ainda está sendo descartado, mas executou apt-get update na conclusão sem ser descartado. Em seguida, tentei apt-get upgrade e continuei por um bom tempo e depois me derrubei.

Já faz algum tempo e parece não haver tráfego na LAN que indique que apt-get upgrade ainda está fazendo alguma coisa, mas /var/lib/dpkg/ está bloqueado. O processo provavelmente está aguardando a entrada de um shell que foi vaporizado.

A (s) pergunta (s):

  1. Existe uma maneira de resolver isso educadamente ou devo apenas reiniciar?
  2. Como impedir que isso seja repetido naususeam? Como posso manter minha sessão ssh viva com certeza?
por Clark Leach 22.04.2016 / 06:48

4 respostas

0

Para mim, parece que sua atualização reinicia um serviço de algum tipo que desconecta sua conexão. Como alternativa, você solta apenas a conexão e o estado médio de atualização é parafusado com o sistema, resultando na necessidade de uma reinicialização.

Normalmente, eu acho que um gerenciador / interface de rede foi atualizado, e "reinício da rede de serviço" aconteceu.

O problema aqui é que quando sua sessão ssh é fechada, o programa / script / whatevs que você executa é fechado. O que significa que se você executar o apt-get upgrade e a sessão fechar, a atualização será interrompida abruptamente ao mesmo tempo que a sessão ssh é fechada.

Eu sugeriria executar a atualização em uma tela (acho que seria possível), ou conectar uma tela externa ao seu Beaglebone.

    
por 22.04.2016 / 08:22
0

O SSH é bastante estável normalmente. Talvez você tenha uma configuração defeituosa na sua configuração SSHD (não é possível dizer isso sem vê-la) ou sua rede tem alguns problemas. Como solução alternativa, você poderia tentar usar Mosh "em vez de" SSH, ele faz um trabalho muito melhor na reconexão, mesmo se o seu IP mudar ou sua conexão de rede falha completamente por algum tempo.

Ao fechar / desconectar uma conexão SSH, normalmente , os processos executados nela são mortos por um sinal SIGHUP . Isso significa que apt-get provavelmente não está mais sendo executado.
Mas, para verificar isso, você sempre pode executar ps aux | grep apt\-get .
Um reboot deve fazer o truque de qualquer maneira.

    
por 22.04.2016 / 11:42
0

How can I keep my ssh session alive for sure for sure?

No seu tipo /etc/ssh/sshd_config em ClientAliveInterval 60 e, claro, reinicie o serviço sshd, que evitará que você saia da sessão SSH.

    
por 22.04.2016 / 12:37
0

Eu recomendo que você sempre use screen quando fizer ssh no seu host remoto.

$ ssh -t username@hostname screen -D -RR 

Se você perder a conexão com sua sessão ssh, não há problema, porque você pode simplesmente executar o mesmo comando novamente e voltará para a sua sessão de tela sem nada terminar.

O problema com a sua sessão ssh não ser mantida por tempo suficiente, deve ser corrigido se você colocar as configurações abaixo em ~/.ssh/config ou /etc/ssh/ssh_config :

ServerAliveInterval 60
ServerAliveCountMax 10
    
por 22.04.2016 / 13:25

Tags