在centos上yum时,遇到了下面的问题,错误提示:

  rpmdb: unable to join the environment
  error: db4 error(11) from dbenv->open: Resource temporarily unavailable
  error: cannot open Packages database in /var/lib/rpm

  经多方查阅,并尝试各种办法之后发现,这是因为rpm的数据库被损坏了,解决的办法就是重建数据库。在重建之前,你需要先删掉以前rpm数据库的相关内容,即/var/lib/rpm目录下的__db.*的几个文件,若有一个*.back文件,也需要删除。主要是以下的两条命令完成删除和重建:

  rm -rf /var/lib/rpm/__db*
  rpm -rebuilddb

  如果在第二条命令执行时,又提示你“空间不够”时,这时你可以删除/var/log目录下的所有文件,然后再次执行上述的第二条命令就可以了。