Yellow dog Updater Modified (yum) es un gestor de paquetes avanzado propio de las ditribuciones linux que usan paquetes RPM, como RedHat, Fedora o Centos. Este gestor es una herramienta para línea de comandos, con la que podemos descargar, instalar, desinstalar y actualizar cualquier paquetes que tengamos en nuestros repositiorios con gran facilidad. Eso si, como cualquiera otra herramienta no es perfecta y algunas veces surgen errores como el siguiente, el cual voy a explicar como solucionar.
1. El error se produce al ejecutar el comando de yum para actualizar:
yum update2. Entonces veremos por pantalla lo siguiente o algo parecido:
Loaded plugins: fastestmirror, priorities
error: no dbpath has been set
error: cannot open Packages database in /%{_dbpath}
Traceback (most recent call last):
File "/usr/bin/yum", line 29, in ?
yummain.user_main(sys.argv[1:], exit_code=True)
File "/usr/share/yum-cli/yummain.py", line 309, in user_main
errcode = main(args)
File "/usr/share/yum-cli/yummain.py", line 157, in main
base.getOptionsConfig(args)
File "/usr/share/yum-cli/cli.py", line 187, in getOptionsConfig
self.conf
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 664, in
conf = property(fget=lambda self: self._getConfig(),
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 239, in _getConfig
self._conf = config.readMainConfig(startupconf)
File "/usr/lib/python2.4/site-packages/yum/config.py", line 804, in readMainConfig
yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
File "/usr/lib/python2.4/site-packages/yum/config.py", line 877, in _getsysver
idx = ts.dbMatch('provides', distroverpkg)
TypeError: rpmdb open failed3. Para solucionar el error solo hay que ejecutar la siguiente lista de comandos, uno a uno:
rm /dev/urandommknod -m 644 /dev/urandom c 1 9yum clean allrm -f /var/lib/rpm/__db*rpm --rebuilddb4. Una vez realizado esto, si probamos de ejcutar el comando de actualización veremos como funciona de nuevo sin problemas.





Posted in
Tags: 




