web-dev-qa-db-fra.com

Comment annuler apt-get supprimer?

Je sais que c'est une situation amusante mais j'ai supprimé python avec tous les programmes associés de Ubuntu en utilisant sudo apt-get supprimer python? Évidemment je peux installer Python, mais cela me prendra beaucoup de temps pour Installez tous les programmes que j'ai supprimés. Peut-être qu'il y a une solution?

Merci

20
IgorDiy

Il n'y a pas de moyen simple, mais si vous regardez /var/log/apt/history.log, vous pouvez voir ce qui a été supprimé. Il suffit de réinstaller chaque paquet qui a été supprimé.

28
ablackhat

Je viens de faire cette erreur, vous pouvez exécuter les commandes ci-dessous pour annuler le supprimer des packages, cela extrait les informations des packages supprimés du fichier journal et les réinstallera.

echo '#!/bin/bash' > restore
echo Sudo apt-get install `grep Remove /var/log/apt/history.log | tail -1 | sed -e 's|Remove: ||g' -e 's|([^)]*)||g' -e 's|:[^ ]* ||g' -e 's|,||g'` >> restore
chmod +x restore 
./restore
21
tzafrir

J'ai trouvé une astuce fraîche sur les forums Ubunt .

Il est possible d'exécuter ce qui suit dans un terminal:

awk '!/^Start|^Commandl|^End|^Upgrade:|^Error:/ { gsub( /\([^()]*\)/ ,"" );gsub(/ ,/," ");sub(/^Install:/,""); print}' /var/log/apt/history.log

Regardez la sortie, puis utilisez

Sudo apt-get install [packages]

et remplacer [des paquets] par la dernière ligne de packages renvoyés (notez qu'il peut envelopper).

7
railgun

La mise à niveau restaure la plupart d'entre elles, le reste .. Vous pouvez utiliser les techniques présentées ci-dessus. Pour mettre à niveau, tapez juste "sudo apt-obtenir mise à niveau"

0
Thom

Pour ajouter à la réponse d'Ablackhat, vous pouvez copier et coller tout après la dernière commande Supprimer en /var/log/apt/history.log dans un nouvel éditeur de programmeurs. Regex remplacer :.*?, avec (string vide) et copiez tous les paquets séparés par l'espace résultants. Puis courez $ Sudo apt-get install <paste>

0
Trent Bing