Comment désinstaller complètement un package (y compris tous les fichiers supplémentaires qui l'accompagnent) en utilisant yum (ou rpm)?

18

Quand je le fais yum remove, il conserve parfois les fichiers de configuration d'un package.

Existe-t-il de toute façon de supprimer un package complètement, sans conserver aucun fichier qui appartenait au package?

J'utilise CentOS.

Howard
la source
Pouvez-vous fournir un exemple de fichiers de configuration qui restent après la suppression de yum?
ZaSter
1
~ / .mozilla laissé par firefox, par exemple
Howard
2
~ / .mozilla est créé uniquement lorsque vous exécutez le programme Firefox. Il n'est pas créé par le package firefox. Exécutez la commande rpm -qf ~/.mozillaet il signalera que ce fichier ne fait partie d'aucun package.
ZaSter
@ZaSter: Lorsque j'ai supprimé le paquet quagga, il a conservé tous ses fichiers de configuration dans / etc / quagga (des fichiers comme zebra.conf, ospfd.conf, bgpd.conf) qui auraient dû être supprimés avec le paquet lui-même. Si c'est par conception de les conserver, veuillez fournir une commande qui supprimera également les fichiers de configuration.
TusharG
@TusharG C'est exact. Pour les packages RPM qui contiennent des fichiers de configuration déclarés, yum removene supprime pas ces fichiers.
ZaSter

Réponses:

14

Consultez la Deleting packages with yumsection dans le COMMENT

Il dit:

Dans tous les cas, la syntaxe de commande pour la suppression de packages est:

   # yum remove package1 [package2 package3...]

Comme indiqué ci-dessus, il supprime package1 et tous les packages de l'arborescence de dépendances qui dépendent de package1, éventuellement de manière irréversible en ce qui concerne les données de configuration.

Comme moyen rapide, vous pouvez essayer:

yum remove package
yum install package

Voici également un intéressant for. Et la question peut vous aider.

Celui qui conserve les configurations dans une sauvegarde est rpm -e

Ce que vous pouvez faire est de découvrir ce qui se trouve dans un rpm en utilisant:

 rpm -ql packagename

ou

rpm -qlp packagename if the package is not yet installed.

vous pouvez ensuite effectuer manuellement les modifications souhaitées.

J'espère que cela t'aides!

AAlvz
la source
2
Je suppose qu'il est probablement impossible de supprimer tous les fichiers livrés avec un package ... mais votre recommandation est toujours utile.
Howard
ne fonctionne pas sur RHEL7. /etc/sysconfig/<package>le fichier est toujours là.
erikbwork
1
rpm -e xxx.rpm && rpm -ivh --replacefiles xxx.rpm

Cela remplace en effet les anciennes configurations conservées après "l'effacement". Doit être un moyen de le faire avec yum et dnf

Neil
la source