Excluir un repositorio específico de YUM Update

13

Estoy haciendo una actualización de todo el sistema yum en RHEL 5.5 y el repositorio IUS EPEL está arrojando un error de dependencia que falta:

php53-mcrypt-5.3.3-4.ius.el5.x86_64 from installed has depsolving problems
--> Missing Dependency: php53-common = 5.3.3-4.ius.el5 is needed by package php53-mcrypt-   5.3.3-4.ius.el5.x86_64 (installed)
Error: Missing Dependency: php53-common = 5.3.3-4.ius.el5 is needed by package php53-mcrypt-5.3.3-4.ius.el5.x86_64 (installed)

¿Hay alguna forma de ejecutar la actualización de YUM en todos los demás repositorios ignorando el repositorio IUS EPEL para omitir este problema de dependencia?

Aclaración

Estoy tratando de instalar las actualizaciones solo de Redhat Network. No puedo encontrar el nombre del repositorio, por lo que no puedo hacer algo como, sudo yum --disablerepo=* --enablerepo=rhel updateya que la versión de yum que estoy usando no admite varios repositorios enumerados a continuación --disablerepo.

Actualizar

Mi solución temporal es correr sudo yum --exclude=php53* update. Estoy convencido de que hay una mejor manera. Esta mejor manera incluye solucionar el problema real, así que también presenté un error con el Proyecto de la Comunidad IUS .

Actualización n. ° 2

Parece que encontré el problema con la dependencia . Sigo pensando que debería haber una solución viable.

¡Gracias!

Robin
fuente
He actualizado mi respuesta para tener en cuenta su aclaración.
plasmid87

Respuestas:

21

Pruebe el interruptor de repositorio de desactivación:

--disablerepo=REPONAME

ACTUALIZAR

Para buscar todos los repositorios actualmente "conocidos" (habilitados y deshabilitados):

yum repolist all

Luego, para encontrar qué repositorio le causa dolor por el paquete anterior, intente:

yum list php53-mcrypt-5.3.3-4.ius.el5.x86_64 --showduplicates

Esto mostrará cuáles de sus repositorios proporcionan el paquete anterior (también verá "instalado" en la lista, para mostrar los paquetes instalados localmente).

Pruebe el interruptor de deshabilitación nuevamente una vez que conozca el repositorio utilizando el interruptor de repositorio de deshabilitación.

yum update --disablerepo=[from above]

Si no se siguen los pasos anteriores para seleccionar el repositorio que desea omitir, intente examinar /etc/yum.repos.d/ , que es la ubicación predeterminada de RHEL para las definiciones de repositorio. Una vez en este directorio, ubique todos los archivos de repositorio de base RHEL y actualizaciones no estándar e incluya enabled = 0 , por ejemplo,

[repo]
enabled=0

Espero que esto ayude.

plasmid87
fuente
Esto podría funcionar si pudiera especificar múltiples repositorios. Lo intenté --disablerepo=epel --disablerepo=iusy --disablerepo=epel,ius.
Robin
yum repolist allmuestra que solo están habilitados los siguientes repositorios: epel, ius y rhel-x86_64-server-5. Su --showduplicatescomando muestra ese paquete como instalado desde el repositorio ius. Así que probé lo siguiente sudo yum --disablerepo=* --enablerepo=rhel-x86_64-server-5 updatey todavía arroja un error de dependencia en el mismo paquete. También intenté deshabilitar los repos cambiando la enabled=0configuración en /etc/yum.repos.d/
Robin
Me imagino que cuando instaló el repositorio IUS, se configuró para habilitarse de manera predeterminada. Intente esto en su lugar: sudo yum update --disablerepo=iussuponiendo que todos los demás repositorios estén habilitados de forma predeterminada. De lo contrario, intente sudo yum update --exclude=php53-mcrypt-5.3.3-4.ius.el5.x86_64omitir este paquete por completo.
plasmid87
Ninguna de estas opciones funciona. Me estoy perdiendo algo
Robin
Solo puedo imaginar que algo más necesita ese paquete actualizado como parte del proceso de actualización. Si lo ejecuta sudo yum deplist php53-mcrypt-5.3.3-4.ius.el5.x86_64, le mostrará todas las dependencias y proveedores para ese paquete en particular. En mi experiencia con paquetes PHP y RHEL, este es un problema común. No queriendo desviarme del problema en cuestión, pero he encontrado que Remi proporciona los mejores paquetes para PHP, nunca he tenido un problema de dependencia con PHP después de pasar a sus repositorios.
plasmid87
1

la forma más fácil de hacerlo es comentando el linux con su repositorio no deseado en /etc/yum.repos.d/

fromnaboo
fuente
1

Puede deshabilitar múltiples repositorios en la línea de comando yum:

yum update --disablerepo=myrepo1 --disablerepo=myrepo2 --disablerepo=myrepo3

Sin embargo, si hace eso, debe habilitar explícitamente el repositorio que desea:

yum update --disablerepo=myrepo1 --disablerepo=myrepo2 \
           --disablerepo=myrepo3 --enablerepo=TheRepoIWant
LukeInDC
fuente