Reconstruir banco de dados RPM corrompido no RedHat

Primeiro, comece fazendo backup de seu banco de dados RPM atual antes de continuar (você pode precisar dele no futuro), usando os comandos a seguir.

# mkdir /backups/
# tar -zcvf /backups/rpmdb-$(date +"%d%m%Y").tar.gz  /var/lib/rpm
Em seguida, verifique a integridade do arquivo de metadados do pacote mestre / var / lib / rpm / Packages; este é o arquivo que precisa ser reconstruído, mas primeiro remova os arquivos / var / lib / rpm / __ db * para evitar bloqueios obsoletos usando os comandos a seguir.
# rm -f /var/lib/rpm/__db*
# /usr/lib/rpm/rpmdb_verify /var/lib/rpm/Packages
Caso a operação acima falhe, significando que você ainda encontra erros, então você deve despejar e carregar um novo banco de dados. Verifique também a integridade do arquivo Packages recém-carregado da seguinte maneira.
# cd /var/lib/rpm/ 
# mv Packages Packages.back 
# /usr/lib/rpm/rpmdb_dump Packages.back | /usr/lib/rpm/rpmdb_load Packages 
# /usr/lib/rpm/rpmdb_verify Packages
Agora, para verificar os cabeçalhos do banco de dados, consulte todos os pacotes instalados usando os sinalizadores -q e -a e tente observar cuidadosamente qualquer erro enviado para o stderror.
# rpm -qa >/dev/null 
Por último, mas não menos importante, reconstrua o banco de dados RPM usando o seguinte comando, a opção -vv permite exibir muitas informações de depuração.
# rpm -vv --rebuilddb
Finalmente, tente executar o comando rpm ou yum com falha novamente para ver se tudo está funcionando bem.

Deixe um comentário

O seu endereço de e-mail não será publicado.