Comment puis-je me reconnecter au processus de «mise à niveau» de Ubuntu Server?


79

J'ai accidentellement appuyé sur Ctrl + C pendant le do-release-upgradeprocessus du serveur Ubuntu . Je suis passé dans un shell pour comparer un fichier .conf dans / etc /. Lorsque j'ai appuyé sur Ctrl-C, il m'a demandé si je voulais essayer de nous rattacher au processus de mise à niveau, mais cela n'a pas été le cas.

Donc j'ai arrêté, et maintenant il y a un processus suspendu de dpkg qui maintient le verrou apt. C'est un serveur virtualisé sans interface graphique ...

Est-il possible de récupérer le processus de mise à niveau ou dois-je arrêter le processus dpkg et recommencer?


2
Screen -list répertorie-t-il toujours le processus de mise à niveau? Si c'est le cas, screen -r pourrait le rattacher à nouveau. Quelle était l'erreur exacte en essayant de rattacher?
arjarj

J'ai essayé plus tard screen -RD, mais cela n'a pas fonctionné. Il n'y avait aucun démon d'écran en cours d'exécution, donc il n'y avait rien pour se reconnecter. Erreur exacte? J'avais le choix entre 'r' ou 'q' je pense (reconnecter ou quitter) au bas d'une application semblable à des malédictions. Désolé, je ne peux pas être plus utile que ça. J'utilisais VirtualBox, et sans un tmux ou une session d'écran en cours, je n'avais aucun défilement et l'interface ressemblant à des curses continuait à effacer l'écran. La reconnexion n'a pas fonctionné, alors j'ai arrêté.
Alex Leach

1
Je devrais ajouter que j'ai essayé screen -R -Den tant qu'utilisateur sudo et utilisateur normal.
Alex Leach


2
Oui! dpkg configure -aest la bonne réponse. Cela m'est arrivé et le problème, c'est que bind9 n'a pas été correctement configuré (le Ctrl-C doit donc avoir arrêté ce processus et il ne pouvait plus démarrer!) -upgrade a fonctionné comme un charme et après cela, j'ai redémarré et tout a fonctionné.
Alexis Wilke

Réponses:


113

Habituellement, je publie des mises à niveau sur un réseau privé virtuel (VPN). J'ai donc essayé plusieurs fois. À chaque fois qu'il met à jour mon paquet openvpn, je perds la connexion et je me reconnecte ensuite.

do-release-upgradedémarre une session de sauvegarde SSH sur le port 1022 et une session d'écran de sauvegarde. Si vous n'avez pas d'écran installé, cela ne sera PAS disponible.

Vous pouvez obtenir la session d'écran en exécutant:

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.

Ensuite, pour rattacher:

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

Utilisation de l'écran précédemment répertorié après root/

Vous devriez être de retour là où vous avez perdu la connexion.


1
Je n'ai pas d'écran installé ... et je ne peux pas en installer un avec apt-get (fichier verrouillé)
inemanja

Ceci est extrêmement utile. La réponse serait peut-être encore meilleure si vous ajoutiez une brève mention indiquant que la do-release-upgradesession de l'écran démarre automatiquement (vous m'avez demandé de relire la question pendant une seconde pour rechercher la mention du début du processus de mise à niveau via screen)
polynomial_donut

1
Je suis étonné que cette question ne cesse de recevoir +1, il est si vieux
Alex R

@AlexR Il est toujours pertinent et vient de me sauver aujourd'hui! La magie des sites Stack *!
Luis Lobo Borobia

29

J'ai eu le même problème lors de la mise à niveau vers quantal. Malheureusement pour moi, comme pour l'affiche originale, l'écran a également été tué à cause de ctrl + c.

Tuer le fichier dpkg et le redémarrer avec "--configure -a" a résolu le problème.

Merci


Merci merci merci. Cela a fonctionné pour moi.
firebush le

2

Je suis plutôt une personne de CentOS / RHEL, mais d'après mon expérience, il vaut toujours mieux tuer et recommencer le processus. Les téléchargements, synchronisations, etc. doivent déjà être terminés et ne doivent pas être refaits. Puisque c'est ce qui prend la majorité du temps, il ne devrait pas y avoir beaucoup de choses perdues dans cette voie.


Oui, je pense qu'il n'y a pas grand chose d'autre à faire. J'aurais probablement pu utiliser reptyr pour rattacher le pty / tty (je ne connais jamais la différence), mais c'est plus facile à partir de zéro. Et tu as raison c'est beaucoup plus rapide la deuxième fois!
Alex Leach
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.