Yum no funciona en CentOS 7 limpio: ¿cómo solucionarlo?
Hoy me estaba golpeando la cabeza contra la pared para encontrar la solución al siguiente misterioso problema. Cada vez que ejecuto cualquier comando en la Terminal, ya sea instalando un paquete o actualizando el sistema, mi sistema mínimo CentOS 7 arroja el siguiente error.
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.excellmedia.net
* elrepo: ftp.nluug.nl
* extras: mirrors.vonline.vn
* updates: mirrors.vonline.vn
Traceback (most recent call last): 27% [================ ] 140 kB/s | 2.5 MB 00:00:48 ETA
File "/usr/libexec/urlgrabber-ext-down", line 75, in
main()
File "/usr/libexec/urlgrabber-ext-down", line 61, in main
fo = PyCurlFileObject(opts.url, opts.filename, opts)
File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1258, in __init__
self._do_open()
File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1589, in _do_open
self._do_grab()
File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1723, in _do_grab
self._do_perform()
File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1517, in _do_perform
raise KeyboardInterrupt
KeyboardInterrupt
Exiting on user cancel
No cancelo el proceso ni interrumpo el teclado, pero mi máquina virtual CentOS 7 seguía mostrando el error anterior. Lo intenté muchas veces, pero no pude instalar ningún paquete ni actualizar el sistema.
Afortunadamente, encontré una solución en este hilo.
Aquí está lo que hice para resolver el problema. Por si acaso te encuentras con el mismo error, haz lo siguiente.
Desde tu Terminal, ejecuta los siguientes comandos uno por uno como usuario root:
yum clean metadata
yum clean all
yum upgrade
O simplemente ejecute el comando de una línea como usuario root:
bash -c 'yum clean metadata && yum upgrade'
Eso es todo. ¡El problema desapareció! Ahora puedo instalar cualquier software sin problemas.
Actualización del 12 de abril de 2016:
Desafortunadamente, la solución anterior ya no funcionó para mí. No tengo ni idea de porqué. Sin embargo, logré solucionar temporalmente el error anterior haciendo el siguiente truco.
Edite el archivo /usr/lib/python2.7/site-packages/urlgrabber/grabber.py,
vi /usr/lib/python2.7/site-packages/urlgrabber/grabber.py
Busque la siguiente línea (línea 1510) y recomiéndela agregando un símbolo de almohadilla (#) delante de ella.
elif errcode in (42, 55, 56):
Guarde y cierre el archivo.
Y finalmente, ejecute los siguientes comandos uno por uno como usuario root:
yum clean metadata
yum clean all
yum upgrade
¡Esta vez funcionó! Realmente no tengo idea de por qué sucede esto. Espero que esto ayude.