Effacer plusieurs paquets en utilisant rpm ou yum
M'a donné l'accès à un serveur avec 50+ php rpm installé. Je suis en train de les supprimer tous.
En gros, j'essaie de combiner ces deux commandes:
rpm -qa | grep 'php'
et
rpm --erase
Je connais un peu les tuyaux et la redirection, mais je ne vois pas comment les utiliser à cette fin. S'il vous plaît aider.
source d'informationauteur jerry
Vous devez vous connecter pour publier un commentaire.
À l'aide de
yum
La liste et supprimer l'indication des paquets et leurs dépendances, mais avec un
y/N
confirmation:Pour contourner la confirmation, remplacer
yum
avecyum -y
.À l'aide de
rpm
Cette section s'appuie sur les réponses par twalburg et Ricardo.
Liste Rpm sont installés:
Liste Rpm qui seront effacées, sans les effacer:
Sur Amazon Linux, vous devrez peut-être utiliser
grep '^D: ========== ---'
à la place.Si le Rpm ne sont pas listés par la commande ci-dessus, d'enquêter sur les erreurs:
Effacer ces Rpm:
Confirmer l'effacement:
L'habitude de l'outil pour ce travail, c'est
xargs
:Cela appel
rpm -e
avec tous les paquets nommés dans l'entrée standard dexargs
comme arguments.Une autre option est d'utiliser la sortie de
rpm -qa | grep ...
dans lerpm --erase
commande directement:Peut-être pas pour le
php
cas où vous êtes à la citation, mais laxargs
approche peut éventuellement rencontrer des problèmes si il décide de scinder la liste en plusieurs invocations derpm -e
et la première liste contient les paquets qui sont des dépendances de paquets dans les listes suivantes. Bien sûr, si vous êtes en train de retirer que de nombreux forfaits tout à la fois, vous pourriez avoir d'autres choses que vous devez considérer...à la liste:
pour supprimer instalé répertoriés et filtrée: