Pembaruan apt-get Vivid file Paket besar di / var / lib / apt / daftar / parsial

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

Saya mencoba bunzipping dan mendapatkan jejak sampah:

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

Sepertinya file yang dikompresi hanya 88K:

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

Melakukan dump hex pada akhir file muncul untuk mengungkapkan daftar direktori yang ditambahkan:

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 tail melalui string dan greping untuk file menunjukkan file yang sama terdaftar berulang kali:

 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

Adakah yang pernah mengalami ini sebelumnya?

pengguna402751
sumber
Saya menemukan solusi untuk masalah ini: rm -rf / var / lib / apt / daftar / parsial / * dan kemudian jalankan kembali pembaruan apt-get.
user402751
Saya mengalami ini lagi, setelah melakukan instalasi baru dari DVD, saya awalnya telah ditingkatkan dari 14.10. {{392G us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages.bz2}}} Tanda tangannya sedikit berbeda, ada kesalahan http berulang. {{tail -c 500K us.archive.ubuntu.com_ubuntu_dists_vivid-updates_main_binary-i386_Packages.bz2 | string | grep "HTTP / 1.1 416 Rentang Diminta Tidak Memuaskan" HTTP / 1.1 416 Rentang Diminta Tidak Memuaskan HTTP / 1.1 416 Rentang Diminta Tidak Memuaskan HTTP / 1.1 416 Rentang Diminta Tidak Memuaskan HTTP / 1.1 416 Rentang Diminta Tidak Memuaskan}}
user402751
Hmm, sepertinya aku juga punya masalah ini. Sangat menyebalkan. Saya datang untuk bekerja di pagi hari, dan segala macam hal telah macet karena disk penuh. Apakah Anda secara kebetulan menemukan solusi?
Frode
Solusi, tidak. Saya baru saja menggunakan solusi untuk menghapus semua file di / var / lib / apt / daftar / parsial / * sebelum "apt-get update"
user402751

Jawaban:

6

Kedengarannya seperti masalah proxy. Saya pernah punya masalah dengan pakar bahwa proxy mengganti stoples dengan halaman html yang berisi peringatan virus. Html disimpan sebagai .jar tetapi karena rusak tidak ada yang berfungsi lagi.

Bagaimanapun: aman untuk menghapus semuanya dari direktori /var/lib/apt/lists/partial/(dan juga dari /var/cache/apt/archives/partial/).

Untuk pemecahan masalah, saya merekomendasikan langkah-langkah berikut:

  • Coba cermin lain, mis. http://de.archive.ubuntu.com/ubuntu/ bukan http://ch.archive.ubuntu.com/ubuntu/ atau bahkan arsip utama http://archive.ubuntu.com/ubuntu/
  • Coba protokol lain: ftp: // daripada http: // - sisa path tetap untuk mirror default
  • Cobalah untuk menganalisis transfer menggunakan wireshark (gunakan opsi menu konteks 'Ikuti aliran TCP'). Yang menarik adalah tajuk dan konten HTTP. Jika Anda mendapatkan jawaban dengan kode status HTTP 200 (yang berarti ok) tetapi konten yang dapat dibaca manusia, ada sesuatu yang salah dengan proxy Anda. File bzip2 biasa seharusnya tidak mengandung teks yang bisa dibaca manusia.
  • Gunakan wgetatau curluntuk memeriksa apa yang Anda dapatkan dari server saat mengunduh tanpa apt-get.
Daniel Alder
sumber
Menarik, saya sebenarnya di belakang proxy. @ user402751, apakah Anda juga?
Frode
Ya, saya berada di belakang proxy yang mungkin menjelaskan mengapa tidak semua orang mengalami masalah ini. Yang sedang berkata ada bug yang sangat buruk di sini karena hanya menulis disk sampai penuh.
user402751
2
Dukungan proxy tidak rusak, tetapi mungkin beberapa server tidak berperilaku benar. Apakah Anda pernah menggunakan Wireshark untuk menganalisis apa yang diangkut saat mengunduh (Opsi 'Ikuti aliran TCP)? Yang menarik adalah tajuk dan konten HTTP. Biasanya, file bzip2 tidak boleh mengandung setiap keluaran dapat digunakan ketika pipa melalui stringperintah. Hanya untuk memastikan: apakah Anda menggunakan server http atau ftp?
Daniel Alder
Saya penasaran? Apakah jawaban ini membantu siapa pun? Apakah user402751 atau @Frode mencoba langkah-langkahnya?
Daniel Alder
@DanielAlder Saya tidak mengejar masalah lebih lanjut (belum). Setidaknya bermanfaat untuk mengetahui bahwa itu mungkin masalah proxy.
Frode