O apt-get vívido atualiza enormes arquivos de pacotes em / var / lib / apt / lists / parcial

8
ls -Ssh /var/lib/apt/lists/partial | head

total 88G
 46G security.ubuntu.com_ubuntu_dists_vivid-security_main_binary-amd64_Packages.bz2
 42G us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages.bz2

Tentei fazer um bunzipping e fiquei com lixo à direita:

bunzip2: us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages.bz2: trailing garbage after EOF ignored

Parece que o arquivo descompactado tem apenas 88K:

 du -hs us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages
88K

Fazer um dump hexadecimal do final do arquivo parece revelar uma listagem de diretório sendo anexada:

tail -c 200 security.ubuntu.com_ubuntu_dists_vivid-security_main_binary-amd64_Packages.bz2 | hexdump -C
00000000  30 38 64 66 37 20 20 20  20 20 20 20 20 20 20 20  |08df7           |
00000010  20 20 34 38 31 39 20 75  6e 69 76 65 72 73 65 2f  |  4819 universe/|
00000020  69 31 38 6e 2f 54 72 61  6e 73 6c 61 74 69 6f 6e  |i18n/Translation|
00000030  2d 65 6e 2e 62 7a 32 0a  20 31 30 66 64 62 31 61  |-en.bz2. 10fdb1a|
00000040  37 34 61 62 34 34 33 36  64 39 37 62 33 33 66 65  |74ab4436d97b33fe|
00000050  62 30 38 38 36 66 35 63  38 61 63 63 64 36 34 34  |b0886f5c8accd644|
00000060  33 62 36 34 36 37 61 30  64 63 39 61 63 39 64 31  |3b6467a0dc9ac9d1|
00000070  66 64 33 39 61 36 31 63  62 20 20 20 20 20 20 20  |fd39a61cb       |
00000080  20 20 20 20 20 20 31 35  38 31 20 75 6e 69 76 65  |      1581 unive|
00000090  72 73 65 2f 73 6f 75 72  63 65 2f 53 6f 75 72 63  |rse/source/Sourc|
000000a0  65 73 2e 62 7a 32 0a 20  61 64 66 35 31 32 30 66  |es.bz2. adf5120f|
000000b0  65 63 61 37 38 66 34 65  37 36 66 34 31 36 66 38  |eca78f4e76f416f8|
000000c0  31 30 32 31 36 62 33 30                           |10216b30|

Piping a cauda através de strings e greping para um arquivo mostra o mesmo arquivo listado repetidamente:

 tail -c 500K security.ubuntu.com_ubuntu_dists_vivid-security_main_binary-amd64_Packages.bz2 | strings  | grep -i multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2
 64a543afbb5f4bf728636bdcbbe7a2ed0804adc2               14 multiverse/i18n/Translation-en.bz2
 d3dda84eb03b9738d118eb2be78e246106900493c0ae07819ad60815134a8058               14 multiverse/i18n/Translation-en.bz2

Alguém já se deparou com isso antes?

user402751
fonte
Encontrei uma solução alternativa para o problema: rm -rf / var / lib / apt / lists / parcial / * e, em seguida, execute novamente o apt-get update.
user402751
Eu me deparei com isso novamente, depois de fazer uma nova instalação a partir do DVD, eu originalmente havia atualizado a partir da 14.10. {{392G us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages.bz2}}} A assinatura é um pouco diferente, há erros http repetidos. {{tail -c 500K us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages.bz2 | cordas | grep "HTTP / 1.1 416 Intervalo solicitado não satisfatório" HTTP / 1.1 416 Intervalo solicitado não satisfatório HTTP / 1.1 416 Intervalo solicitado não satisfatório HTTP / 1,1 416 Intervalo solicitado não satisfatório HTTP / 1,1 416 Intervalo solicitado não satisfatório}}
user402751
Hmm, pareço ter esse problema também. Muito irritante. Eu venho trabalhar de manhã e todo tipo de coisa falhou porque o disco está cheio. Você encontrou por acaso uma solução?
Frode
Solução, não. Eu apenas fui usando a solução de remoção de todos os arquivos em / var / lib / apt listas / / parcial / * antes "apt-get update"
user402751
É um bug. askubuntu.com/a/633235/43246
aleung

Respostas:

6

Soa um pouco como um problema de proxy. Certa vez, tive um problema com o maven que o proxy substituiu um jar por uma página html contendo um aviso de vírus. O html foi salvo como .jar, mas como foi quebrado, não funcionou mais.

Enfim: é seguro excluir tudo do diretório /var/lib/apt/lists/partial/(e também de /var/cache/apt/archives/partial/).

Para solução de problemas, recomendo as seguintes etapas:

  • Tente outro espelho, por exemplo. http://de.archive.ubuntu.com/ubuntu/ em vez de http://ch.archive.ubuntu.com/ubuntu/ ou mesmo o arquivo principal http://archive.ubuntu.com/ubuntu/
  • Tente outro protocolo: ftp: // em vez de http: // - o restante do caminho permanece para os espelhos padrão
  • Tente analisar a transferência usando o wireshark (use a opção do menu de contexto 'Seguir fluxo TCP'). Interessantes são os cabeçalhos HTTP e o conteúdo. Se você obtiver respostas com o código de status HTTP 200 (que significa ok), mas com conteúdo legível por humanos, algo está seriamente errado no seu proxy. Um arquivo bzip2 comum não deve conter texto legível por humanos.
  • Use wgetou curlpara verificar o que você obtém do servidor ao fazer o download sem o apt-get.
Daniel Alder
fonte
Interessante, estou de fato atrás de um proxy. @ user402751, você também está?
Frode 24/05
Sim, também estou atrás de um proxy, o que provavelmente explica por que nem todo mundo se depara com esse problema. Dito isto, há um bug muito ruim aqui, pois apenas grava o disco até ficar cheio.
User402751
2
O suporte a proxy não é quebrado por si só, mas provavelmente alguns servidores não se comportam corretamente. Você já usou o Wireshark para analisar o que é transportado durante o download (opção 'Seguir o fluxo TCP')? Interessantes são os cabeçalhos HTTP e o conteúdo. Normalmente, um arquivo bzip2 não deve conter nenhuma saída utilizável ao canalizar o stringcomando. Apenas para ter certeza: você está usando servidores http ou ftp?
Daniel Alder
Estou curioso? Esta resposta ajudou alguém? User402751 ou @Frode tentou as etapas?
Daniel Alder
@DanielAlder Ainda não persegui o problema. É pelo menos útil saber que provavelmente é um problema de proxy.
Frode