J'essaie d'installer Winswitch sur CentOs 6. Il nécessite "nxagent". Mais dans centos, le nom du package est "nx". Existe-t-il un moyen de dire à yum de sauter la vérification de la dépendance 'nxagent' (j'ai déjà installé 'nx')? Spécifier - skip-broken saute le tout
Généralement, yum
n'a pas d'options pour ignorer un seul paquet des dépendances. Option --skip-broken
ignore toutes les dépendances non résolues.
Tu peux essayer yum --exclude=packagename
mais il exclut un package spécifique par nom ou glob des mises à jour sur tous les référentiels, pas des dépendances.
La commande rpm
a le --nodeps
option que vous pouvez utiliser. Un défi est que rpm
en lui-même n'est pas au courant des référentiels yum. La commande suivante installe ou met à jour le package, en ignorant les dépendances, mais en recherchant automatiquement l'URL de téléchargement à partir de vos référentiels avec repoquery
qui se trouve dans le package yum-utils
.
rpm -Uvh --nodeps $(repoquery --location winswitch)
Après cela, un yum update
réussira probablement sans erreurs de dépendance.
Il semble que vous essayez d'installer un package qui n'a pas été conçu pour le système d'exploitation, c'est-à-dire que s'il a été conçu pour CentOS, il faudrait nx
correctement.
Une autre solution de contournement pour le problème consiste à créer et installer un petit package RPM shim qui ne contient aucun fichier, mais dans le fichier spec contient les lignes suivantes (entre autres):
requires: nx
provides: nxagent
De cette façon, la dépendance doit être satisfaite, mais elle peut s'attendre à ce que les fichiers se trouvent dans un emplacement qui diffère entre le package nxagent
qu'il s'attend à avoir installé et le package nx
fourni par CentOS.
vous pouvez également utiliser rpmrebuild pour modifier les métadonnées rpm afin qu'elles pointent vers le nouveau nom du package. ce sera alors "votre" paquet, mais c'est plus propre en ce qui concerne les dépendances rpm. Il n'y a aucun inconvénient à utiliser --nodeps je pense.