Linux rpm installe mais ne peut pas effacer. Pourquoi?

Mon code Perl a installé plusieurs fichiers rpm en tant que root. la prochaine installation les supprime ( rpm -e ) avant d’installer une nouvelle version. On ne supprime pas, avec rpm -e donnant l’erreur qu’il n’est pas installé. Toutefois, plus tard, lorsque le fichier mis à jour est installé, le message indique qu’il est déjà installé.

Les tentatives manuelles de suppression donnent les mêmes résultats. Mes questions sont de savoir comment forcer la suppression de quelque chose de la firebase database rpm, et pourquoi cette contradiction existe-t-elle (non installée à partir de rpm -e et déjà installée à partir de rpm -Uvh et de rpm -ivh )?

  1. Une fois installé, utilisez le nom du package et non le nom du fichier du package.
  2. Vous ne devriez pas avoir besoin de retirer un paquet avant de le mettre à niveau. Cela signifie que l’un des paquets ou les deux sont cassés.

La raison pour laquelle il n’est pas effacé est probablement que l’un des scriptlets est défaillant. Faites-le manuellement et surveillez les erreurs. S’il mentionne un scriptlet ayant échoué, essayez de l’effacer avec rpm -e --noscripts

rpm -e --force ne supprimera pas de force un paquet, rpm -e --nodeps l’ rpm -e --nodeps pour vérifier d’autres dépendances.

Il est possible que votre firebase database RPM soit en quelque sorte rpm --rebuilddb , vous pouvez essayer un rpm --rebuilddb