Eu recebo este erro: dpkg: erro fatal irrecuperável, abortando: arquivo de lista de arquivos para o pacote 'fonts-tlwg-kinnari' contém nome de arquivo vazio

1

Quando tento instalar, recebo este erro:

dpkg: unrecoverable fatal error, aborting:  files list file for package 'fonts-tlwg-kinnari' contains empty filename
E: Sub-process /usr/bin/dpkg returned an error code (2)

E a instalação é cancelada.

Estou usando o Ubuntu 14.04

    
por Adrian Cid Almaguer 15.07.2015 / 16:40

4 respostas

5

Este é um bug relatado no launchpad.

O erro mostrado será:

files list file for package '*' is missing final newline

Ou:

files list file for package '*' contains an empty filename

Onde * start é um nome de pacote aleatório mas constante "por instalação".

Solução:

Faça o download do .deb

sudo apt-get download fonts-tlwg-kinnari

Execute este código

sudo dpkg -c /var/cache/apt/archives/fonts-tlwg-kinnari_1%3a0.5.1-3_all.deb  | awk '{if ($6 == "./") { print "/."; } \
else if (substr($6, length($6), 1) == "/") \
{print substr($6, 2, length($6) - 2); } \
else { print substr($6, 2, length($6) - 1);}}' > /var/lib/dpkg/info/fonts-tlwg-kinnari.list 

Você pode ler mais em launchpad

    
por Adrian Cid Almaguer 15.07.2015 / 17:36
3

Outra opção da resposta de Adrian é a seguinte:

sudo rm /var/lib/dpkg/info/fonts-tlwg-kinnari.list

e depois

sudo apt-get install --reinstall fonts-tlwg-kinnari

Basicamente, esse erro significa que algo foi corrompido em seu sistema de arquivos. É um mau sinal, e esses arquivos de lista são necessários para o gerenciador de pacotes descobrir o que é e o que não é seguro atualizar.

Esta regeneração do arquivo de lista é a melhor opção, mas não é 100% segura.

De qualquer forma, lembre-se de que algo deu errado com a sua unidade e fique atento a mais erros.

    
por crcarlin 31.01.2017 / 21:26
1

A resposta de Adrian Cid Almaguer é a única coisa que funcionou para mim, a idéia geral é "recriar o arquivo ausente do pacote .deb".

Uma observação: verifique primeiro em /var/cache/apt/archives/ e /var/lib/dpkg/info para ver se o arquivo .deb já existe. Se sim, apenas use isso em vez de fazer o sudo apt-get download .

Além disso, sudo dpkg ... | awk ... | sudo tee /var/lib/dpkg/info/example.list provavelmente funcionará melhor para a maioria das pessoas; a combinação sudo tee superando o problema de permissões > de reencontros.

    
por studog 29.05.2017 / 20:33
1

Eu finalmente tive algum tempo para consertar isso sozinho. Para referência futura

Mudei todos os arquivos linux * para algum outro lugar. ex: ~ / (home) sudo mv / var / lib / dpkg / info / linux * ./

sudo dpkg --configure -a
sudo apt update
sudo apt upgrade

Isso foi corrigido

    
por crypt0rick 23.04.2018 / 10:55