Comment annuler la suppression d'apt-get?

18

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

Merci

IgorDiy
la source
Veuillez inclure les efforts de recherche pour retirer le vote négatif.
Colyn1337
Hou la la! Une question de 3 ans, qui aide à restaurer mon ordinateur. Je suis tellement content que ce soit ici et trouvé sur google. Merci!
Michael Cole

Réponses:

26

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é. Réinstallez simplement chaque package supprimé.

ablackhat
la source
2
Cela m'a sauvé la vie!
Sanket Sahu
3
Je me suis inscrit sur serverfault juste pour voter, merci.
Phil
20

Je viens de faire cette erreur, vous pouvez exécuter les commandes ci-dessous pour annuler la suppression des packages Cela va extraire les informations des packages supprimés du fichier journal et les réinstaller

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
tzafrir
la source
bouée de sauvetage ... aurait dû réaliser que apt remove libboost*c'était une mauvaise idée
Persistance
2
Merci, vous m'avez sauvé la vie !! Rappel: NE JAMAIS EXÉCUTER "sudo apt purge python2.7"
2
Ne courez pas sudo apt remove python3haha
ThaJay
Eh bien, j'ai utilisé apt purgealors déchirez-moi, heureusement que c'était une nouvelle installation. Ce serait bien de savoir que les systèmes d'exploitation clés (pour la plupart des gens), comme netplan, l'exigent. Bien sûr, il la référence dans la liste de suppression, avant de demander si vous êtes sûr, mais qui a le temps de regarder et d'être sûr quand il est plus facile de frapper la yclé et returnvotre système dans l'oubli ...
DeeJayh
5

J'ai trouvé un truc sympa sur les forums Ubuntu .

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 remplacez [packages] par la dernière ligne de packages qui a été retournée (notez qu'elle peut se terminer).

railgun
la source
Tu m'as sauvé la journée. Cela m'a vraiment beaucoup aidé.
Khamidulla
1

Recherchez tous les packages qui ont été désinstallés. Il est stocké dans /var/log/apt/history.log . Vous pouvez écrire un programme shell pour installer chaque package qui a été supprimé. Écrivez-le sur n'importe quel éditeur de texte GNU Emacs, vi, GNU Nano. Exécutez-le via le terminal. Tous les programmes qui ont été désinstallés seront réinstallés par eux-mêmes.

user234756
la source
0

Pour ajouter à la réponse de ablackhat, vous pouvez copier et coller tout après la dernière commande de suppression /var/log/apt/history.logdans un nouvel éditeur de programmeurs. Regex remplace :.*?,par (chaîne vide) et copie tous les packages séparés par des espaces résultants. Ensuite, exécutez$ sudo apt-get install <paste>

Trent Bing
la source
0

La mise à niveau en restaure la majeure partie, le reste .. vous pouvez utiliser les techniques indiquées ci-dessus. Pour mettre à niveau, tapez simplement "sudo apt-get upgrade"

Thom
la source
pourquoi apt-get upgraderéinstaller les packages qui ont été volontairement supprimés?
Gerald Schneider
En fait, ce n'est pas si loin d'une réponse parfaite à l'OP: attendez trois ans et faitesapt-get dist-upgrade
quadruplebucky
-1

si tu

 apt-get install python

Python sera réinstallé avec toutes ses conditions préalables, ce qui est, je suppose, tous les programmes associés dont vous parlez?

Nick M.
la source
J'ai déjà installé Python, mais les programmes qui en dépendaient comme Zim, GImp et beaucoup d'autres n'ont pas été annulés ((Même Gedit ne fonctionne pas
IgorDiy
-1. Ne résout pas la question de l'OP en ce que tout ce qui a besoin de Python a également été supprimé.
Magellan