A instalação do apt-get -f está bloqueada no "arquivo de sistema corrompido tarfile"

10

Estou com problemas apt-getno meu Raspberry Pi . Esta é a saída quando tento instalar um pacote:

pi@raspberrypi ~ $ sudo apt-get -f install cowsay
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 emacs23 : Depends: libm17n-0 (>= 1.6.1) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

sudo apt-get -f install não ajudou:

sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  libm17n-0
Suggested packages:
  m17n-docs
The following NEW packages will be installed:
  libm17n-0
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
12 not fully installed or removed.
Need to get 0 B/258 kB of archives.
After this operation, 837 kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Use of uninitialized value $value in substitution (s///) at /usr/share/perl5/Debconf/Format/822.pm line 65, <$__ANONIO__> line 515.
(Reading database ... 58096 files and directories currently installed.)
Unpacking libm17n-0 (from .../libm17n-0_1.6.3-2_armhf.deb) ...
dpkg: error processing /var/cache/apt/archives/libm17n-0_1.6.3-2_armhf.deb (--unpack):
 corrupted filesystem tarfile - corrupted package archive
dpkg-deb (subprocess): decompressing archive member: internal gzip read error: '<fd:4>: invalid distance too far back'
dpkg-deb: error: subprocess <decompress> returned error exit status 2
Errors were encountered while processing:
 /var/cache/apt/archives/libm17n-0_1.6.3-2_armhf.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Alguma sugestão de como esse problema pode ser resolvido, além de atualizar novamente o SD e começar de novo?

iiSeymour
fonte

Respostas:

7

A remoção do pacote corrompido resolveu o problema.

sudo rm /var/cache/apt/archives/libm17n-0_1.6.3-2_armhf.deb
iiSeymour
fonte
0

Qualquer pessoa com esse problema deve usar o 'aptitude', mesmo removendo os arquivos .deb às vezes não funciona.

aptitude update
aptitude dist-upgrade

Nesta etapa, você será perguntado se deseja remover pacotes com dependências não atendidas ou não? você deve dizer sim e deixar que o aptitude faça o trabalho; finalmente, você verá que o 'apt-get' não ficará mais preso às dependências não atendidas.

Nesta resposta, presumi que você deseja interromper a instalação e remover arquivos de pacotes corrompidos.

Brian SP2
fonte
1
Eu recebi o mesmo erro com o aptitude. Apenas a remoção dos arquivos corrompidos funcionou.
Part2th18 #
espere o que? não se lembra da época em que estava lidando com esse problema, a remoção de arquivos não resolveu meu problema. Não me lembro como mexi com meu sistema, mas definitivamente me lembro que nada estava funcionando depois de horas de luta. @partofthething
Brian SP2