55 votes

Connexion SSH perdue lors de la mise à jour du serveur - Comment se reconnecter au processus ?

J'ai donc effectué une mise à jour d'Ubuntu Server de la version 11.04 à la version 11.10.

Je l'ai oublié en arrière-plan, et mon Le client SSH a dépassé le temps imparti et s'est déconnecté (putty sous Windows, allez savoir pourquoi). La dernière chose sur mon terminal était une question sur la conservation d'une ancienne configuration, etc.

Lorsque je me suis reconnecté au serveur, les fichiers aptitude étaient verrouillés par un autre processus, je suppose donc que ce processus de mise à niveau est là à attendre ma contribution.

Comment puis-je interagir avec ce processus et poursuivre la mise à niveau ? Si possible.

Remerciements

66voto

Satpal Tanan Points 111

Le processus s'exécute en fait dans une session écran ou byobu en tant qu'utilisateur root. Reconnectez-vous au serveur avec putty sur le port 22 ou le port de sécurité 1022. sudo su - ou su - dans votre compte root et reprenez l'écran avec byobu ou un screen -r et reprenez là où vous vous êtes arrêté.

Oh et oui, je l'ai appris à mes dépens ;-)

53voto

GvS Points 28137

Vous ne pouvez pas. Trouvez le processus de mise à niveau en faisant

lsof /var/lib/dpkg/lock

Tuez-le, réparez toutes les mises à niveau interrompues à l'aide de

dpkg --configure --pending

et redémarrer la mise à niveau.

4voto

David Spillett Points 22424

cryopide (trouvé via cette question ) pourrait être utile, à moins que le principe actuel "un processus, pas une arborescence de processus" ne soit un problème dans ce cas.

Les fichiers peuvent être bloqués parce que le processus a été tué sans cérémonie et n'a pas eu le temps de faire le ménage, alors vérifiez qu'aptitude est toujours en cours d'exécution. Utiliser lsof /var/lib/dpkg/lock comme suggéré dans la réponse de Teddy pour vérifier - cela vous indiquera le pid pour essayer le cryopid aussi.

À l'avenir, je recommande d'essayer de passer par l'écran lorsque c'est possible. J'ai pris l'habitude d'utiliser screen (ou byobu, qui est une enveloppe autour de screen qui définit certains comportements utiles) comme première chose à exécuter lorsque je me connecte en SSH à n'importe où Je pourrai alors me reconnecter en cas de problème. Vous pouvez le configurer pour qu'il démarre ou se rattache automatiquement, bien que je n'aie jamais eu l'occasion de le faire nulle part - il existe un certain nombre d'exemples en ligne ( celui-ci par exemple ) si vous voulez l'essayer.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X