Oracle Linux yum no funciona después de la actualización

Oracle Linux yum no funciona después de la actualización

Actualicé mi servidor Oracle Linux 6.4 a Oracle Linux 6.8, que está registrado en el servidor Spacewalk. Pero después de la actualización, los comandos yum no funcionan en el servidor.

[root@j4server tmp]# yum update
Loaded plugins: aliases, changelog, kabi, presto, refresh-packagekit, rhnplugin, security, tmprepo, verify,
              : versionlock
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in <module>
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 298, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 115, in main
    base.getOptionsConfig(args)
  File "/usr/share/yum-cli/cli.py", line 229, in getOptionsConfig
    self.conf
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 911, in <lambda>
    conf = property(fget=lambda self: self._getConfig(),
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 363, in _getConfig
    self.plugins.run('init')
  File "/usr/lib/python2.6/site-packages/yum/plugins.py", line 184, in run
    func(conduitcls(self, self.base, conf, **kwargs))
  File "/usr/share/yum-plugins/rhnplugin.py", line 115, in init_hook
    login_info = up2dateAuth.getLoginInfo()
  File "/usr/share/rhn/up2date_client/up2dateAuth.py", line 219, in getLoginInfo
    login()
  File "/usr/share/rhn/up2date_client/up2dateAuth.py", line 167, in login
    if readCachedLogin():
  File "/usr/share/rhn/up2date_client/up2dateAuth.py", line 133, in readCachedLogin
    expireTime = float(li['X-RHN-Auth-Expiration'])
KeyError: 'X-RHN-Auth-Expiration'

Está arrojando esta salida. Cuando intento deshabilitar rhn-plugin, los comandos yum funcionan, enumeran los paquetes en la caminata espacial pero, como puede suponer, no puedo instalarlos.

¿Tiene alguna idea sobre esta situación? ¡Gracias por cualquier ayuda!

Respuesta1

Encontré la solución, la publico aquí en caso de que alguien se encuentre con la misma situación. La razón de esta falla es que cuando actualiza el servidor Oracle Linux a través de spacewalk con el comando "yum update", yum update reemplaza el complemento rhn habilitado para spacewalk del servidor con un complemento habilitado para ULN.

Borré los paquetes up2date con "yum erase up2date" y "yum erase pirut" y luego monté la ISO "RHEL 6.8" en el servidor Oracle Linux. Después de agregar esta iso como repositorio local. Instalé herramientas rhn con "yum install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin" y eliminé el archivo de repositorio local. ¡Ahora todo funciona bien!

Respuesta2

Me encontré con el mismo error, aunque quizás por una razón diferente. Registré mi Oracle Linux 6.7 con un servidor de caminata espacial pero no actualicé los paquetes de la caminata espacial primero. Muchas investigaciones no arrojaron mucho más que este es un problema. (Probé la solución de DNND pero rhn se hace cargo de yum. Uno de los siguientes comandos funcionará con su solución)

Hay un error conocido en un script de Python. Edite /usr/share/rhn/up2date_client/up2dateAuth.pyy cambie 3 instancias de :X-RHN-Auth-Expiration a X-RHN-Auth-Expire-Offset.

Ya sea usando la ISO de Linux como lo hizo DNND o un repositorio moderno usa yum deshabilitando el complemento rhn:

yum --disableplugin=rhnplugin -y install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin

Respuesta3

Aquí hay una solución simple para eso. Descubrí que ejecutar el rhnregcomando al mismo tiempo en varios servidores para registrar el cliente en la caminata espacial/satélite redhat causa este problema. Por ejemplo, ejecuto este comando en 4 de mis servidores y solo un servidor se registró correctamente.

3 de mis servidores arrojan el mismo error mencionado anteriormente. Esto es lo que hice para resolver el problema.

Hice una copia de seguridad de mi up2dateAuth.pyarchivo actual

 cp /usr/share/rhn/up2date_client/up2dateAuth.py /usr/share/rhn/up2date_client/up2dateAuth.py_`date +%m_%d_%Y`

Lo hice scpdesde el primer servidor que se registró correctamente en el servidor de caminata espacial.

 scp /usr/share/rhn/up2date_client/up2dateAuth.py root@server2:/usr/share/rhn/up2date_client/
 ls -lrth /usr/share/rhn/up2date_client/up2dateAuth.py*

correr

 yum repolist

 rhnreg_ks --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --serverUrl=https://myspacewalkserver-corp.com/XMLRPC  --activationkey=1-oraclelinux6-x86_64 --force

 yum repolist (it work like a charm)

PD: no olvides eliminar el cd /etc/yum.repos.d/; rm -rf spacewalk26-client.repo antes de ejecutar el comando rhnreg o generará otro error.

Deshabilite el acceso al repositorio del cliente Spacewalk en el archivo de configuración del repositorio del servidor Oracle Linux Yum o elimine /etc/yum.repos.d/spacewalk26-client.repo.

información relacionada