comment supprimer tous les packages dépendants installés tout en supprimant un package dans centos 7?

8

J'utilise CentOS 7. J'ai installé okular, qui est une visionneuse PDF, avec la commande:

sudo yum install okular

Comme vous pouvez le voir dans l'image ci-dessous, il a installé 37 packages dépendants pour installer okular.

dépendances installées

Mais je n'étais pas satisfait des fonctionnalités de l'application et j'ai décidé de la supprimer. Le problème est que si je le supprime avec la commande:

sudo yum autoremove okular

Il ne supprime que quatre packages dépendants.

paquets supprimés avec autoremove

Et si je le supprime avec la commande:

sudo yum remove okular

Il supprime un seul package qui est okular.x86_64.

Maintenant, ma question est qu'il existe un moyen de supprimer les 37 packages installés avec une commande ou dois-je les supprimer tous un par un?

ukll
la source

Réponses:

17

Personnellement, je n'aime pas les plugins yum car ils ne fonctionnent pas souvent, selon mon expérience.

Vous pouvez utiliser la yum historycommande pour afficher votre historique miam.

[root@testbox ~]# yum history
Loaded plugins: product-id, rhnplugin, search-disabled-repos, subscription-manager, verify, versionlock
ID     | Login user               | Date and time    | Action(s)      | Altered
----------------------------------------------------------------------------------
19 | Jason <jason>  | 2016-06-28 09:16 | Install        |   10

Vous pouvez trouver des informations sur la transaction en faisant yum history info <transaction id>. Donc:

yum history info 19vous indiquerait tous les packages installés avec la transaction 19 et la ligne de commande utilisée pour installer les packages. Si vous souhaitez annuler la transaction 19, vous devez exécuter yum history undo 19.

Alternativement, si vous vouliez juste annuler la dernière transaction que vous avez faite (vous avez installé un logiciel et ne l'aimez pas), vous pouvez simplement faire yum history undo last

Jason Powell
la source
Tout d'abord, merci pour votre excellente réponse. Et deuxièmement, quand je l'ai fait sudo yum history, il n'a montré que les actions avec l'ID 30 à 49. Existe-t-il un moyen d'afficher l'historique de toutes les actions (y compris avec l'ID 1-29)?
ukll
1
Vous êtes les bienvenus! Oui, il existe un moyen de montrer toute votre histoire. Faites-le yum history list all.
Jason Powell du
8

yum remove package_name supprimera uniquement ce package et toutes ses dépendances.

yum autoremove supprimera les dépendances inutilisées

Pour supprimer un package avec ses dépendances, vous devez installer le yumplugin appelé:remove-with-leaves

Pour l'installer, tapez:

yum install yum-plugin-remove-with-leaves

Pour supprimer le package_nametype:

yum remove package_name --remove-leaves
GAD3R
la source
J'ai essayé ta réponse, ça ne marche pas.
ukll