使用yum时报错

时间:2022-09-16 23:21:51
 

[root@iZ2535el0z8Z /]# yumrpmdb: unable to join the environmenterror: db3 error(11) from dbenv->open: Resource temporarily unavailableerror: cannot open Packages index using db3 - Resource temporarily unavailable (11)error: cannot open Packages database in /var/lib/rpmCRITICAL:yum.main:Error: rpmdb open failed

原因:rpm的数据库被损坏了

解决办法:重建rpmdb数据库

cd /var/lib/rpm
rm -f __db.*
cd ..
rpm --rebuilddb
yum clean all

如果在rpm --rebuilddb时,报错space不足,此时可以清理/var/log目录下的所有文件,在重新执行rebuild操作。


2、Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

原因:yum源丢失。

解决办法:重新给定新的yum源。

cd /etc/yum.repo.d/
cp CentOS-Base.repo CentOS-Base.repo.bak
vi CentOS-Base.repo
修改其中所有的baseurl,按照操作类型([base] [update]等)指定相应的yum源即可,常用的是阿里云、163、sohu的源。

如:http://mirrors.aliyun.com/centos/6/,后面找到相应操作的目录路径添加到对应的baseurl上即可。

我之前出现的错误是baseurl中关于系统版本号的地方是一个变量$releaserver,我的linux系统是6.5,所以估计这里值是6.5,而我去阿里云的源上http://mirrors.aliyun.com/centos/6.5/发现这里面是空的,估计是更新移除掉了,所以我将所有的baseurl中$releaserver都改为6(因为http://mirrors.aliyun.com/centos/6/这里面有源),ok了。

然后更新一下:

yum clean all
yum update


常用源根目录:

mirrorlist.centos.org

centos.ustc.edu.cn

mirrors.163.com

mirrors.aliyun.com