大麻烦:rpm 空数据库,安装 V3 RSA/SHA1 签名,密钥错误,YumRepo 错误

大麻烦:rpm 空数据库,安装 V3 RSA/SHA1 签名,密钥错误,YumRepo 错误

我有点累,因为我花了几个小时解决问题,但在 Centos 6.6 上找不到解决方案。

我有很多烦恼:

  • rpm 数据库为空:尝试谷歌搜索,找到恢复进程,但总是空的
  • 转速访问给出错误:V3 RSA/SHA1 Signature, key ID c105b9de: BAD
  • 百胜访问给出错误:YumRepo Error: All mirror URLs are not using ftp, http[s] or file.

如何调试和使用rpm?我需要回滚今天的更新nss-softokenglibc因为它们破坏了我所有的curlhttps 调用。

答案1

好的,

首先,我恢复 RPM 数据库的备份。我按照这个教程 解决了 bug-centos-yum-rpm-by-nss-softokn-3 损坏的问题

它解决了问题,我现在可以去睡觉了;-)。

错误:nss-softokn-3.14.3-19.el6_6 更新可能已损坏

--- 来自不喜欢点击的网站;-) ---

要解决此问题,您必须:

  1. 手动下载 nss-softokn-freebl-3.14.3-19

    yumdownloader nss-softokn-freebl

或 wget RPM

64-Bit servers / x86_64 run : wget ftp://195.220.108.108/linux/centos/6.6/updates/x86_64/Packages/nss-softokn-freebl-3.14.3-19.el6_6.x86_64.rpm

32-Bit Servers / i686 run : wget ftp://195.220.108.108/linux/centos/6.6/updates/i386/Packages/nss-softokn-freebl-3.14.3-19.el6_6.i686.rpm

提取转速

64-Bit servers / x86_64 run: rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.x86_64.rpm | cpio -idmv
32-Bit Servers / i686 run: rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.i686.rpm | cpio -idmv

将 .libfreeblpriv3.* 复制到正确的位置

64-Bit servers / x86_64 run : cp ./lib64/libfreeblpriv3.* /lib64
32-Bit Servers / i686 run : cp ./lib/libfreeblpriv3.* /lib

重新运行 Yum Update 以更新 nss-softokn-freebl 并修复 YUM 和 RPM

百胜更新

如果您仍然遇到问题,您可能需要为 64 位服务器重新安装 yum,如下所示,32 位服务器只需要找到 32 位版本的 rpm!但大多数服务器不需要这个:

  1. 获取http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-3.2.29-60.el6.centos.noarch.rpm
  2. 获取http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-30.el6.noarch.rpm
  3. 获取http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-6.el6.centos.12.2.x86_64.rpm

    1 rpm -ivh --nodeps yum-3.2.29-60.el6.centos.noarch.rpm 2 rpm -ivh yum-plugin-fastestmirror-1.1.30-30.el6.noarch.rpm 3 rpm -ivh centos-release -6-6.el6.centos.12.2.x86_64.rpm

我也有一些关于如何恢复在尝试修复问题时损坏的 rpmdb 的问题,有两种方法:

从备份的相同服务器复制 /var/lib/rpm 文件夹的完整副本 – 您确实有备份,对吗?

在良好的服务器上或从备份中:

tar -cf rpmbackup.tar /var/lib/rpm

然后将 tar 发送到坏服务器

在损坏的服务器上:

  1. cd /var/lib
  2. mv /var/lib/rpm /var/lib/rpm.bak
  3. tar -xf /location/to/rpmbackup.tar

那么你就可以出发了!


相关内容