Conexão SSH perdida durante a atualização do servidor - Como reconectar ao processo?


32

Então, eu estava executando uma atualização do Ubuntu Server de 11.04 para 11.10.

Esqueci-me disso em segundo plano, e meu cliente SSH atingiu o tempo limite e desconectou-se (massa no Windows, vai entender). A última coisa no meu terminal foi uma questão de manter uma configuração antiga, etc.

Quando efetuei login novamente no servidor, os arquivos do aptitude foram bloqueados por outro processo, portanto, presumo que esse processo de atualização esteja lá aguardando minha entrada.

Como posso interagir com esse processo e continuar a atualização? Se possível.

obrigado


Respostas:


36

Na verdade, o processo é executado em uma tela ou sessão de byobu como usuário root. reconecte-se ao servidor com a massa na porta 22 ou com a proteção contra falhas 1022. sudo su - ou su - em sua conta root e retome a tela com byobu ou uma tela -r e retome aonde você saiu.

ah e sim, eu descobri da maneira mais difícil ;-)


11
Woah obrigado! Na verdade, eu estava executando uma atualização de versão de 11.10 para 12.04 no byobu e depois fechou quando o byobu foi atualizado, mas consegui me reconectar à sessão da tela raiz e assistir ao término da atualização! Eu quase tentei forçar a atualização, mas felizmente li essa resposta a tempo.
Ibrahim

3
Em uma instalação interrompida, dizia que a tela já estava conectada, então forço a tela a desconectar, para que eu possa reconectar. O comando é tela -D Informações a partir daqui: kb.iu.edu/data/ahrm.html
David

11
O uso screen -r <id>também funciona e você só precisa digitar alguns caracteres do ID para que ele funcione.
Daniel

11
Isso não funciona para mim, pois diz que screennão está instalado.
Starbeamrainbowlabs

11
Uso mais recente do Ubuntu sudo screen -D -rdepois sudo su -(se não for root).
bshea

34

Você não pode. Encontre o processo de atualização fazendo

lsof /var/lib/dpkg/lock

Mate-o, corrija quaisquer atualizações interrompidas com

dpkg --configure --pending

e reinicie a atualização.


3
Isso é seguro com o processo sendo um do-release-upgrade?
Stephen Melrose

11
@StephenMelrose Nunca é seguro. Mas é razoavelmente seguro, e a única opção restante.
Teddy

2
melhor resposta entre muitos sobre como corrigir uma atualização do apt-get abortada pelo tempo limite da sessão de massa de vidraceiro ... testada com sucesso, obrigado!
219 Kojo

A and restart the upgradeetapa não está funcionando no meu caso (perdi a sessão ssh durante do-release-upgrade14.04 -> 16.04). O que eu faço como último passo para concluir a atualização da versão é sudo apt autoremovee então sudo shutdown -r now.
Ruslan Stelmachenko

Encontrei uma resposta mais completa aqui que eu segui a atualização automaticamente continuou de onde parou. askubuntu.com/questions/219545/...
lacostenycoder

4

O cryopid (encontrado através desta pergunta ) pode ajudar, a menos que o atual "processo único, não uma árvore de processos" seja um problema nesse caso.

Os arquivos podem estar bloqueados porque o processo foi morto sem cerimônia e não teve a chance de limpar depois de si próprio; portanto, confirme se o aptitude ainda está em execução. Use lsof /var/lib/dpkg/lockcomo sugerido na resposta de Teddy para verificar - isso lhe dirá o pid para tentar criopid também.

No futuro, recomendo tentar executar a tela sempre que possível. Eu criei o hábito de tela (ou byobu, que é um invólucro em torno da tela que define alguns comportamentos úteis), sendo a primeira coisa que eu corro quando SSHing para qualquer lugar, então posso reconectar se houver problemas. Você pode configurá-lo para iniciar ou recolocar automaticamente, embora eu nunca tenha feito isso em nenhum lugar - existem vários exemplos on-line ( por exemplo ), se você quiser tentar.


11
Aliás, eu tentei fazer isso e fiz uma atualização do-release sobre o ssh usando o byobu, mas quando o byobu foi atualizado, ele matou minha sessão! Gostaria de saber se o uso da tela diretamente teria impedido isso. Mas a outra resposta a esta pergunta respondeu à minha situação, parece que o instalador é inteligente e gere o seu próprio sessão de tela de qualquer maneira: D
Ibrahim
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.