Comment reprendre en toute sécurité une mise à niveau d'aptitude dist après le délai d'expiration SSH?


10

J'ai commencé aptitude dist-upgradesur SSH sur mon réseau local. À un moment donné, la session a expiré mais la mise à niveau n'était pas terminée (elle a été laissée sur l'un de ces écrans d'acceptation de logiciel - j'oublie lequel, donc je ne sais pas jusqu'où je suis arrivé, mais le fait est que en ce moment, il est inutile d'attendre que j'accepte).

Je suis retourné SSH sur mon serveur et je vois que le processus d'aptitude est toujours en cours d'exécution. Quelle est la façon la plus sûre de procéder? Je n'ai pas utilisé screendonc existe-t-il un moyen de reprendre le processus d'aptitude en cours d'exécution? Sinon, quel est le moyen le plus sûr de le tuer et de le redémarrer?

Réponses:


13

Tuez-le avec killet exécutez-le à nouveau. Il ne téléchargera rien de déjà téléchargé et terminera la mise à niveau. Si cela ne peut pas continuer parce que votre système est dans un état cassé, apt-get -f installdevrait le réparer.


3
Oui, +1. Cela a fonctionné pour moi (mais avec apt-get plutôt qu'avec aptitude) depuis plus d'une décennie. Je suggère de courir dpkg --configure --pendingentre tuer l'aptitude d'origine et la relancer. Cela configurera tout ce qui a déjà été installé mais n'a pas encore été configuré (à l'exception des packages avec des dépôts non résolus).
cas

3

Sur Ubuntu (au moins), la mise à niveau est exécutée dans une session d'écran qui peut être reprise:

sudo screen -ls
sudo screen -r <screen number>
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.