Cabeçalho V3 RSA / SHA1 Assinatura, ID da chave c105b9de: BAD

0

Eu tenho um problema estranho no Centos 6.6 com rpm.

Eu tento instalar o rpm / srpm e recebo esta mensagem:

rpm -v --checksig glibc-2.12-1.149.el6.src.rpm 
glibc-2.12-1.149.el6.src.rpm:
Entête V3 RSA/SHA1 Signature, key ID c105b9de: BAD
Header SHA1 digest: BAD
V3 RSA/SHA1 Signature, key ID c105b9de: BAD
MD5 digest: BAD

E de outro servidor com a mesma versão do sistema operacional:

rpm -v --checksig glibc-2.12-1.149.el6.src.rpm 
glibc-2.12-1.149.el6.src.rpm:
Entête V3 RSA/SHA1 Signature, key ID c105b9de: OK
Header SHA1 digest: OK (e9db7a50918ba3d42cbd7da1e8dc4fa6dac7949f)
V3 RSA/SHA1 Signature, key ID c105b9de: OK
MD5 digest: OK (bf01b4a34aafa0fbc2d28d741f6546aa)

Alguma ideia? Existe alguém que eu possa fazer backup / .restore para o servidor que tem problemas?

Obrigado pela sua ajuda.

    
por Mike 15.01.2015 / 23:05

1 resposta

1

de:

Assim, se você atualizar apenas um dos pacotes instalados, você acabará com um YUM e RPM quebrados. Você pode ver mensagens de erro como estas ao tentar executar comandos YUM e RPM: erro: rpmts_HdrFromFdno: cabeçalho V3 RSA / assinatura SHA1, chave ID xxx BAD erro: rpmdbNextIterator: ignorando h # 1784 Cabeçalho V3 Assinatura RSA / SHA1, chave ID xxx BAD Na maioria das vezes você terá o nss-softokn-3.14.3-19 instalado, mas não o nss-softokn-freebl-3.14.3-19

Para corrigir isso, você precisa:

1. Baixar manualmente nss-softokn-freebl-3.14.3-19 yumdownloader nss-softokn-freebl ou wget os RPMs

Servidores de 64 bits / x86_64 executados

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

Servidores de 32 bits / i686 executados

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. Extraia o RPM

Servidores de 64 bits / x86_64 executados

rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.x86_64.rpm | cpio -idmv

Servidores de 32 bits / i686 executados

rpm2cpio nss-softokn-freebl-3.14.3-19.el6_6.i686.rpm | cpio -idmv

3. Copie .libfreeblpriv3. * Para corrigir a localização

Servidores de 64 bits / x86_64 executados

cp ./lib64/libfreeblpriv3.* /lib64

Servidores de 32 bits / i686 executados

cp ./lib/libfreeblpriv3.* /lib

4. Execute novamente a atualização do Yum para atualizar nss-softokn-freebl e FIX YUM e RPM

atualização yum Se você ainda tiver problemas, você pode ter que reinstalar o yum como abaixo para um servidor de 64 bits, os servidores de 32 bits só precisarão localizar as versões de 32 bits do rpms! Mas a maioria dos servidores não precisa disso:

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

Eu também tive algumas dúvidas sobre como restaurar o rpmdb que foi corrompido ao tentar corrigir o problema, existem duas maneiras:

Primeiro, copie uma boa cópia da pasta / var / lib / rpm de um bom servidor idêntico de um backup - você tem backups, certo?

Em bom servidor ou de backup:

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

Em seguida, envie o tar para o servidor incorreto

No servidor quebrado:

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

Então você deve ser bom para ir!

A segunda maneira é reinstalar cada rpm já instalado, verificando o log de instalação do rpm. Veja o comentário abaixo

Bug Report: link

    
por 10.05.2015 / 19:28