Finalmente, depois de muita solução de problemas, encontrei o problema e a solução para resolvê-lo. Escrevendo todas as descobertas aqui para que ele possa ajudar outras pessoas e talvez não precise fazer a solução de problemas demorada que precisei fazer.
Causa raiz:
O problema, se não estiver errado, foi com o espaço em disco. Durante uma das atualizações recentes, meu espaço em disco ficou cheio e 0% ficou disponível para atualizações. Devido a isso, o / var / lib / dpkg / status está corrompido. E depois disso, apenas se recusa a atualizar, instalar ou remover qualquer aplicativo e deu o erro mencionado acima.
Etapas para resolver o problema:
- Primeiro, corrija o motivo da bagunça. Limpou alguns arquivos antigos e indesejados para liberar espaço em disco. Agora eu tenho quase 5% de espaço em disco disponível, que deve ser suficiente para o comportamento normal e concluir a atualização original que falhou por causa do espaço insuficiente em disco.
- Agora, repare o dano causado. Corrigir o arquivo / var / lib / dpkg / status . Aqui, como de costume, especialistas e sua contribuição neste fórum me ajudaram a obter o arquivo de status válido conhecido anteriormente de / var / backups . Toda vez que você faz uma instalação ou uma atualização, o arquivo de status é salvo em um backup gzipado em / var / backups . Consulte aqui para obter detalhes completos sobre isso. Abaixo estão os comandos que eu usei -
~$ sudo mv /var/lib/dpkg/status /var/lib/dpkg/status_bkup
~$ sudo cp /var/backups/dpkg.status.2.gz /var/lib/dpkg/
~$ sudo gunzip -d /var/lib/dpkg/dpkg.status.2.gz
~$ mv /var/lib/dpkg/dpkg.status.2 /var/lib/dpkg/status
~$ sudo apt-get update
voila !! completou a atualização sem erros enfrentados anteriormente.
- Agora, conclua a atualização e verifique se o problema foi resolvido; tente atualizar ou instalar um novo aplicativo-
~$ sudo apt-get -f install
Fetched 14.3 MB in 15s (935 kB/s)
Extracting templates from packages: 100% Preconfiguring packages ... dpkg: error: parsing file '/var/lib/dpkg/status' near line 18299 package >'libgdk-pixbuf2.0-common': end of file during value of field 'Original-Maintainer' (missing final >newline) E: Sub-process /usr/bin/dpkg returned an error code (2)
-
De alguma forma, o arquivo de status foi modificado novamente e um novo erro foi introduzido. Desde agora eu sei o que é o arquivo de status e como solucionar o problema é, eu entendi que isso é por causa de um erro de sintaxe no arquivo de status. Foi fácil identificar que ">" está faltando um dos pacotes no final. Corrigido o arquivo de status para incluir '>' no final.
-
Tente novamente e foi bem-sucedido desta vez!
Felicidades,
Anirudha