Se você recebeu a mensagem de erro abaixo no momento de executar um yum update, upgrade ou install, esse problema é causado pela ausência do pacote nss-softokn-freebl-3.14.3-19.
rpmdbNextIterator - Header V3 RSA/SHA1 Signature, key ID BAD
Origem do problema: tanto o pacote nss-softokn-3.14.3-19 e o nss-softokn-freebl-3.14.3-19 são pacotes que não possuem controle local para se certificar de qual versão corresponde o pacote do outro que está instalado.
Assim, se você usar o yum para atualizar apenas um dos pacotes, isso vai acabar quebrando o yum.
Na maioria das vezes você terá tido nss-softokn-3.14.3-19 instalado, mas não nss-softokn-freebl-3.14.3-19.
Para corrigir isso você tem que:
1. Baixar manualmente nss-softokn-freebl-3.14.3-19:
# yumdownloader nss-softokn-freebl
Ou baixar os pacotes RPM pelo wget.
Para servidores 64 bits (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
Para servidores 32 bits (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
Obs.: se você tiver alguma dúvida se o sistema do servidor é 32 bits ou 64 bits, pode verificar com o comando abaixo:
# uname -m
Vamos extrair o RPM.
Versão 64 bits:
# rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.x86_64.rpm | cpio -idmv
Versão 32 bits:
# rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.i686.rpm | cpio -idmv
3. Copie o libfreeblpriv3 para a localização correta da versão do seu sistema.
Versão 64 bits:
# cp ./lib64/libfreeblpriv3.* /lib64
Versão 32 bits:
# cp ./lib/libfreeblpriv3.* /lib
Depois disso basta executar o "yum update" para atualizar o nss-softokn-freebl e pronto!
O yum já deve normalizar, se depois disso o problema persistir você pode ter que reinstalar o yum, nos servidores 32 bits só é preciso localizar as versões de 32 bits do RPM, para os servidores 64 bits abaixo se encontram os links:
# 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
Depois de baixar os pacotes, realize a instalação:
# 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
Se precisar restaurar o rpmdb que pode ter sido corrompido em alguma tentativa de recuperar o yum, você pode fazer uma cópia do rmp.lib de um servidor que está funcionando, em seguida, enviar para o servidor que está com problemas, conforme demostro abaixo.
Copiando do servidor que está bom:
# tar -cf rpmbackup.tar /var/lib/rpm
Depois de enviar o arquivo para o servidor ruim, basta descompactar:
# cd /var/lib
# mv /var/lib/rpm /var/lib/rpm.bak
# tar -xf /localizacao/do/rpmbackup/rpmbackup.tar
E executar novamente o yum update e com isso deve ter resolvido.
Boa sorte e essa dica eu encontrei no link abaixo, me ajudou muito e espero que ajude a você!
Bug report:
https://bugzilla.redhat.com/show_bug.cgi?id=1182337
Nenhum comentário foi encontrado.