![sqlite.bz2 文件与校验和不匹配 - centos 5.7](https://linux22.com/image/563801/sqlite.bz2%20%E6%96%87%E4%BB%B6%E4%B8%8E%E6%A0%A1%E9%AA%8C%E5%92%8C%E4%B8%8D%E5%8C%B9%E9%85%8D%20-%20centos%205.7.png)
我已经尝试了所有办法,但都没有得到好结果......
yum 每次对于不同的存储库总是会失败并出现“sqlite.bz2 文件与校验和不匹配”的错误,但总是出现上述错误。
我尝试设置... * http_proxy * http_caching * 禁用 fastestmirror * 更改 sysctl.conf 中的设置
结果都一样,
我开始认为这可能是一个错误?...相关http://bugs.centos.org/view.php?id=5116
答案1
我在搜索这个问题的答案时在另一个网站上看到了这篇文章。原帖提到了“不同的存储库”,所以这也符合我的困难,我试图在 redhat 5.3 上的目录中安装 centos 6.2。
问题是不同版本的 Python 版本是不同的。
Python 2.6 使用 hashlib 执行校验和,Python 2.4 使用 SHA 模块执行校验和。CentOS 5.3 附带的 SHA 模块版本不支持 sha256,这就是我们收到上述校验和错误的原因
从 :http://prefetch.net/blog/index.php/2009/11/26/dealing-with-yum-checksum-errors/
答案2
CentOS 5 上的 yum 版本不支持 CentOS 6 使用的默认校验和方法。如果您尝试从您控制的存储库安装,则可以使用该createrepo
命令使用该选项重新生成存储库元信息--checksum "sha"
。来自 createrepo 手册页:
-s --checksum 选择 repomd.xml 和元数据中的包使用的校验和类型。现在默认为“sha256”(如果 python 有 hashlib)。旧默认值为“sha”,实际上是“sha1”,但是明确使用“sha1”在旧版(3.0.x)yum 上不起作用,您需要指定“sha”。