Disons que vous installez un paquet :
yum install php
Et dire que ce paquet php
installe un tas de dépendances.
Dependencies Resolved
===============================================================================================================================
Package Arch Version Repository Size
===============================================================================================================================
Installing:
php x86_64 5.3.3-49.el6 base 1.1 M
Installing for dependencies:
php-bcmath x86_64 5.3.3-49.el6 base 40 k
php-cli x86_64 5.3.3-49.el6 base 2.2 M
php-common x86_64 5.3.3-49.el6 base 530 k
php-dba x86_64 5.3.3-49.el6 base 46 k
php-devel x86_64 5.3.3-49.el6 base 513 k
php-embedded x86_64 5.3.3-49.el6 base 1.1 M
php-enchant x86_64 5.3.3-49.el6 base 34 k
php-gd x86_64 5.3.3-49.el6 base 111 k
php-imap x86_64 5.3.3-49.el6 base 55 k
php-intl x86_64 5.3.3-49.el6 base 76 k
php-ldap x86_64 5.3.3-49.el6 base 43 k
php-mbstring x86_64 5.3.3-49.el6 base 460 k
php-mysql x86_64 5.3.3-49.el6 base 86 k
php-odbc x86_64 5.3.3-49.el6 base 56 k
php-pdo x86_64 5.3.3-49.el6 base 80 k
php-pgsql x86_64 5.3.3-49.el6 base 75 k
php-process x86_64 5.3.3-49.el6 base 44 k
php-pspell x86_64 5.3.3-49.el6 base 33 k
php-recode x86_64 5.3.3-49.el6 base 30 k
php-snmp x86_64 5.3.3-49.el6 base 36 k
php-soap x86_64 5.3.3-49.el6 base 145 k
php-tidy x86_64 5.3.3-49.el6 base 41 k
php-xml x86_64 5.3.3-49.el6 base 108 k
php-xmlrpc x86_64 5.3.3-49.el6 base 58 k
php-zts x86_64 5.3.3-49.el6 base 1.2 M
Si vous deviez simplement essayer de retirer le paquet php
via yum remove php
yum fera exactement cela, et laissera la plupart/toutes les dépendances sur le système puisque vous ne lui avez pas demandé de les supprimer également.
Dependencies Resolved
===============================================================================================================================================================================================================
Package Arch Version Repository Size
===============================================================================================================================================================================================================
Removing:
php x86_64 5.3.3-49.el6 @base 3.5 M
Removing for dependencies:
php-devel x86_64 5.3.3-49.el6 @base 3.0 M
php-pecl-apc-devel x86_64 3.1.9-2.el6 @base 3.3 k
Transaction Summary
===============================================================================================================================================================================================================
Remove 3 Package(s)
Au contraire, vous pouvez utiliser yum pour annuler entièrement une transaction, en appelant yum history
commandement.
]# yum history
Loaded plugins: fastestmirror, security
ID | Login user | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------
41 | <user> | 2018-06-08 10:45 | Install | 26
Et maintenant, annulez l'historique ID 41, dans ce cas :
yum history undo 41
Notez que dans certains cas, yum ne sera pas en mesure de supprimer certains paquets, si des mises à jour plus récentes en dépendent, ou s'il s'agit de paquets du système central, etc... mais en général, cela "annulera" cette transaction.
Notez également que sur les systèmes Fedora (et bientôt CentOS), dnf
a les mêmes commandes, donc dnf history
fonctionnera toujours.
Dernière remarque, cela n'annulera pas les changements de fichiers de configuration que vous avez effectués dans /etc (cela supprimera les fichiers de configuration nouvellement installés si un paquet les a placés là, cependant). Tout ce que vous faites sur le système persistera, tout ce que le gestionnaire de paquets a fait sera annulé. Si vous avez besoin d'une capacité de restauration complète du système, il est préférable d'utiliser une VM et des snapshots comme d'autres l'ont mentionné.
3 votes
Si c'est un vm , utilisez les snapshots