Como faço para reconectar ao processo 'do-release-upgrade' do Ubuntu Server?

79

Pressionei Ctrl + C acidentalmente durante o do-release-upgradeprocesso do Ubuntu Server . Eu tinha caído em um shell para comparar um arquivo .conf em / etc /. Quando pressionei Ctrl-C, ele perguntou se eu queria tentar anexar novamente ao processo de atualização, mas não conseguiu.

Então eu parei, e agora há um processo pendente do dpkg que está segurando o bloqueio do apt. Este é um servidor virtualizado sem interface gráfica ...

É possível recuperar o processo de atualização ou preciso interromper o processo do dpkg e iniciar novamente?

Alex Leach
fonte
2
A tela-list ainda lista o processo de atualização? Nesse caso, a tela -r pode conectá-la novamente. Qual foi o erro exato ao tentar reconectar?
Arjarj
Mais tarde tentei screen -RD, mas não funcionou. Não havia nenhum daemon de tela em execução, portanto não havia nada para se reconectar. Erro exato? Eu tinha a opção 'r' ou 'q', acho (reconectar ou sair) na parte inferior de um aplicativo semelhante a palavrões. Desculpe, não posso ser mais útil do que isso. Eu estava usando o VirtualBox e, sem uma sessão do tmux ou da tela em execução, não havia scrollback e a interface semelhante a maldições continuava limpando a tela. A reconexão não funcionou, então eu apenas saí.
Alex Leach
1
Devo acrescentar que tentei screen -R -Dcomo usuário sudo e meu usuário normal. #
Alex Leach
possível duplicata de atualização Ubuntu Server através de SSH jeito
Michael Hampton
2
Sim! dpkg configure -aé a resposta certa. Isso aconteceu comigo e o pior foi que o bind9 não estava configurado corretamente (ou seja, o Ctrl-C deve ter interrompido esse processo e não pôde mais ser iniciado!) Depois de corrigir o bind9, o apt-get update + upgrade + dist -upgrade correu como um encanto e depois disso eu reiniciei e tudo funcionou.
Alexis Wilke

Respostas:

113

Normalmente, eu lanço atualizações pela VPN, então tentei isso algumas vezes. Sempre que ele atualiza meu pacote openvpn, perco a conexão e reconecto depois.

do-release-upgradeinicia uma sessão SSH de backup na porta 1022 e uma sessão de tela de backup. Se você não tiver a tela instalada, isso NÃO estará disponível.

Você pode obter a sessão de tela executando:

sudo screen -list
There is a screen on:
    2953.ubuntu-release-upgrade-screen-window   (09/13/2012 04:48:02 AM)    (Detached)
1 Socket in /var/run/screen/S-root.

Em seguida, para reconectar, faça:

sudo screen -d -r root/2953.ubuntu-release-upgrade-screen-window

Usando a tela listada anteriormente após root/

Você deve voltar para onde perdeu a conexão.

Alex R
fonte
1
Eu não tenho a tela instalada ... e não consigo instalar uma com o apt-get (arquivo bloqueado)
inemanja 27/04
Isso é extremamente útil. Pode ser uma resposta ainda melhor se você acabou de adicionar uma menção curta que do-release-upgraderealmente inicia automaticamente uma sessão de tela (você me fez reler a pergunta por um segundo para procurar qualquer menção de ter iniciado o processo de atualização via screen)
polynomial_donut
1
Estou surpreso que esta pergunta continue recebendo +1, é tão antiga
Alex R
@AlexR Ainda é relevante e me salvou hoje! A mágica dos sites Stack *!
Luis Lobo Borobia
29

Eu tive o mesmo problema ao atualizar para o quantal. Infelizmente para mim, como o pôster original, a tela também foi interrompida por causa de ctrl + c.

Matar o dpkg e reiniciá-lo com "--configure -a" resolveu o problema.

obrigado

Arul Selvan
fonte
Obrigado, obrigado, obrigado. Isso funcionou para mim.
Firebush # 23/18
2

Eu sou mais uma pessoa do CentOS / RHEL, mas na minha experiência, você é sempre melhor matando e iniciando o processo. Os downloads, sincronizações, etc. já devem estar completos e não precisam ser refeitos. Como é isso que leva a maior parte do tempo, não deve haver muito a perder nesse caminho.

Tim Brigham
fonte
Sim, não há muito mais que possa ser feito, eu acho. Provavelmente eu poderia ter usado o reptyr para recolocar no pty / tty (nunca sei a diferença), mas é mais fácil começar do zero. E você está certo; é muito mais rápido na segunda vez!
Alex Leach