Linux 使用开源 yum 报错 Error performing checksum 解决方法


 

现在开源的yum 有ustc和163。从网上直接下载的repo文件,运行会报错,手工的修改了一下:

 

使用的是ustc的yum,配置文件如下:

[root@web1 yum.repos.d]# cat ustc.repo

 

[base]

name=CentOS-5.9 - Base -mirrors.ustc.edu.cn

baseurl=http://mirrors.ustc.edu.cn/centos/5.9/os/$basearch/

gpgcheck=0

enabled=1

 

#released updates

[updates]

name=CentOS-5.9 - Updates -mirrors.ustc.edu.cn

baseurl=http://mirrors.ustc.edu.cn/centos/5.9/updates/$basearch/

gpgcheck=0

enabled=1

 

#additional packages thatmay be useful

[extras]

name=CentOS-5.9 - Extras -mirrors.ustc.edu.cn

baseurl=http://mirrors.ustc.edu.cn/centos/5.9/extras/$basearch/

gpgcheck=0

enabled=1

 

配置好以后,执行yum update,报错:Error performing checksum

 

[root@web1 yum.repos.d]# yum update

Loaded plugins: katello, product-id,security, subscription-manager

Updating certificate-based repositories.

Unable to read consumer identity

base                                                                                                        | 3.7 kB     00:00    

base/primary_db                                                                                              |4.4 MB     00:02    

http://mirrors.ustc.edu.cn/centos/6.4/os/x86_64/repodata/1e584feac3f3fb76ad4b6fb7e1bc8d44fa124814e9d186dc913ded3c63a216b3-primary.sqlite.bz2:[Errno -3] Error performingchecksum

Trying other mirror.

base/primary_db                                                                                             | 4.4 MB     00:02    

http://mirrors.ustc.edu.cn/centos/6.4/os/x86_64/repodata/1e584feac3f3fb76ad4b6fb7e1bc8d44fa124814e9d186dc913ded3c63a216b3-primary.sqlite.bz2:[Errno -3] Error performing checksum

Trying other mirror.

Error: failure:repodata/1e584feac3f3fb76ad4b6fb7e1bc8d44fa124814e9d186dc913ded3c63a216b3-primary.sqlite.bz2from base: [Errno 256] No more mirrors to try.

 

 

google了一下,说是在rhel 6 中 repomd.xml 文件使用 sha256 作为hash 算法 ,在rhel 5中 默认使用的是sha 作为hash 算法。

 

但我是在redhat 5.8 上使用5.9的yum。 也出现了这种错误。

 

网上的解决方法是:使用新的sha1 来重建repo:

# createrepo -s sha1 dave-el5-x86_64

 

 

我这里没有创建,直接执行如下命令:

# yum clean all

 

 

然后就ok了。  小知识,随笔记之。

 

 

 

 

 

 

 

 

 

--------------------------------------------------------------------------------------------

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

QQ:492913789

Email:ahdba@qq.com

Blog:  http://www.cndba.cn/dave

Weibo:    http://weibo.com/tianlesoftware

Twitter:  http://twitter.com/tianlesoftware

Facebook: http://www.facebook.com/tianlesoftware

Linkedin: http://cn.linkedin.com/in/tianlesoftware


### LinuxYUM 命令报错解决方案 当在Linux系统中使用`yum`命令遇到错误时,可以采取多种措施来解决问题。具体的方法取决于所报告的具体错误消息。 #### 检查Yum版本和组件安装情况 为了确认`yum`及其依赖项已正确安装,在终端输入以下命令验证: ```bash [root@localhost ~]# yum version ``` 如果此命令返回有效的输出,则说明基本环境正常;反之则可能需要重新安装或修复`yum`工具[^2]。 #### 修改镜像源配置文件 有时由于DNS解析失败或其他网络连接问题,可能会导致无法访问默认的软件仓库。此时可以通过编辑/etc/yum.repos.d/目录下的`.repo`文件更改成国内稳定可靠的镜像站点地址,如阿里云、清华大学开源软件镜像站等。保存更改后执行清理缓存操作并尝试更新索引: ```bash sudo yum clean all && sudo yum makecache fast ``` 对于因DNS引起的问题,也可以考虑调整系统的名称服务器设置以提高稳定性[^3]。 #### 处理特定包缺失的情况 假如是因为某些特定RPM包不存在而导致的错误(例如Zabbix案例),先通过搜索功能查找目标库内是否存在所需资源: ```bash yum list available | grep zabbix ``` 一旦发现确实缺少必要的二进制文件或是其命名有所变动,依据最新信息修正请求参数再做一次完整的安装流程即可[^4]。 #### Python 升级引发的问题 值得注意的是,有时候对Python解释器本身的升级也会间接影响到基于它构建的应用程序和服务——比如`yum`本身。这是因为部分旧版脚本可能依赖于特定的小版本特性集。因此建议保持官方推荐的基础运行时环境不变,除非有充分的理由去改变,并且做好相应的兼容性测试工作[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值