от: http://kiteplans.info/2015/01/15/solved-bug-centos-yum-rpm-broken-by-nss-softokn-3-14-3-19-el6_6-update-error-rpmts_hdrfromfdno- ошибок rpmdbnextiterator-заголовок-v3-rsasha1 подписи ключ-идентификатор-плохо /
Таким образом, если вы обновляете yum только один из установленных пакетов, вы получите неработающие YUM и RPM. Такие сообщения об ошибках могут появляться при попытке запуска команд YUM и RPM: error: rpmts_HdrFromFdno: заголовок V3 RSA/SHA1 Подпись, идентификатор ключа xxx Ошибка BAD: rpmdbNextIterator: пропуск h # 1784 Заголовок V3 Подпись RSA/SHA1, идентификатор ключа xxx BAD В большинстве случаев у вас будет установлен nss-softokn-3.14.3-19, но не nss-softokn-freebl-3.14.3-19
Чтобы это исправить, вы должны:
1. Вручную загрузите nss-softokn-freebl-3.14.3-19 yumdownloader nss-softokn-freebl или загрузите RPM
64-битные серверы / x86_64 работают
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-битные серверы / i686 работают
wget ftp://195.220.108.108/linux/centos/6.6/updates/i386/Packages/nss-softokn-freebl-3.14.3-19.el6_6.i686.rpm
2. Извлеките RPM
64-битные серверы / x86_64 работают
rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.x86_64.rpm | cpio -idmv
32-битные серверы / i686 работают
rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.i686.rpm | cpio -idmv
3. Скопируйте .libfreeblpriv3. * В правильное местоположение
64-битные серверы / x86_64 работают
cp ./lib64/libfreeblpriv3.* /lib64
32-битные серверы / i686 работают
cp ./lib/libfreeblpriv3.* /lib
4. Rerun Yum Обновление для обновления nss-softokn-freebl и FIX YUM и RPM
Обновление yum Если у вас все еще есть проблемы, вам может потребоваться переустановить yum, как показано ниже для 64-битного сервера, 32-битным серверам просто нужно найти 32-битные версии rpms! Но большинству серверов это не нужно:
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-3.2.29-60.el6.centos.noarch.rpm
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-30.el6.noarch.rpm
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-6.el6.centos.12.2.x86_64.rpm
rpm -ivh --nodeps yum-3.2.29-60.el6.centos.noarch.rpm
rpm -ivh yum-plugin-fastestmirror-1.1.30-30.el6.noarch.rpm
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 на плохой сервер
На сломанном сервере:
cd /var/lib
mv /var/lib/rpm /var/lib/rpm.bak
tar -xf /location/to/rpmbackup.tar
Тогда тебе должно быть хорошо идти!
Второй способ - переустановить каждый установленный rpm, проверив журнал установки rpm. Смотрите комментарий ниже
Отчет об ошибке : https://bugzilla.redhat.com/show_bug.cgi?id=1182337