Primeiro, faça o backup de / var / lib / dpkg / diversions e / var / lib / dpkg / diversions-old, apenas no caso.
Em seguida, tente copiar / var / lib / dpkg / diversions-old em cima de / var / lib / dpkg / diversions:
cd /var/lib/dpkg
mv diversions diversions.broken
cp diversions-old diversions
Agora o dpkg deve poder funcionar novamente, mas é possível que seu banco de dados de desvios esteja incompleto. Reinstalar ( apt-get install --reinstall packagename
) os pacotes afetados pode ser uma boa maneira de restaurar isso; A pergunta é: como você pode identificar quais pacotes foram afetados? Comparar o conteúdo de diversões. O tempo partido e diversões antigas ( diff -u diversions-old diversions.broken
) é unidirecional; procurando em /var/log/dpkg.log por uma lista de pacotes atualizados recentemente e reinstalá-los apenas no caso de outro. Também é possível que nada de ruim aconteça se você tiver um banco de dados de diversões um pouco desatualizado; tudo depende do que exatamente está nesses arquivos.