Mendapatkan "ketidakcocokan ukuran" saat menggunakan apt-get pada banyak paket

9

Saya mengalami masalah dalam mengunduh beberapa paket menggunakan apt-get. Sejauh ini, saya sudah mengalami ini dengan 'opencv' dan 'gstreamer'. Dengan opencv, ia akan mengambil sejumlah file kemudian kembali dengan kesalahan di bawah ini. Saya sudah mencoba beberapa mirror yang berbeda dan semuanya error pada file yang sama.

Do you want to continue [Y/n]? y
Get:1 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ precise/universe libopencvvideo2.3 i386 2.3.1-7 [106 kB]
Get:2 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ precise/universe libopencv-video-dev i386 2.3.1-7 [129 kB]
Fetched 2,225 B in 0s (11.8 kB/s)        
Failed to fetch http://us-east-1.ec2.archive.ubuntu.com/ubuntu/pool/universe/o/opencv/libopencv-video2.3_2.3.1-7_i386.deb  Size mismatch
Failed to fetch http://us-east-1.ec2.archive.ubuntu.com/ubuntu/pool/universe/o/opencv/libopencv-video-dev_2.3.1-7_i386.deb  Size mismatch
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Saya menjalankan 'apt-cache show libopencv-video *' dan mendapatkan:

Package: libopencv-video2.3
Priority: optional
Section: universe/libs
Installed-Size: 277
Maintainer: Ubuntu Developers <[email protected]>
Original-Maintainer: Debian Science Team <[email protected]>
Architecture: i386
Source: opencv
Version: 2.3.1-7
Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libopencv-core2.3, libopencv-imgproc2.3 (= 2.3.1-7), libstdc++6 (>= 4.1.1)
Filename: pool/universe/o/opencv/libopencv-video2.3_2.3.1-7_i386.deb
Size: 105756
MD5sum: b38c0f11f3856d62168b730522a9691b
SHA1: d45cd609ea497ae72858e0f5914134e124261f22
SHA256: 85e72311ede84efbdd17781cdb04f79818a28968c63f407df6c56efe7da5525e
Description-en: computer vision Video analysis library

Ketika saya membandingkan filesize yang dilaporkan (105756) itu tidak cocok dengan ukuran paket 'deb' ketika saya menariknya ke bawah dengan wget.

Adakah saran untuk menyelesaikan masalah ini dengan menggunakan wget pada setiap file yang gagal dan memasangnya secara manual?

Chris
sumber
Ini adalah 105756 Bytes di mana 106 adalah kB, maka 105.756 kB adalah 106 kB ketika dibulatkan. Yang kira-kira sama.
atenz
benar tetapi ukuran file dari file (file yang sama persis) yang saya unduh menggunakan wget adalah 103kB. Sepertinya deskriptor tidak diperbarui agar sesuai dengan file?
Chris
Ukuran yang diunduh tampaknya berubah sedikit atau beberapa ratus KB (+ atau -) tergantung pada ukuran saat diunduh ke penyimpanan lokal. Saya selalu berpikir itu untuk CRC atau FEC, tetapi kemudian menjadi bingung tentang DASAR di mana bit disimpan. Jika sudah demikian, maka saya tidak yakin, mungkin seseorang akan menjawab.
atenz
Saya bertanya-tanya apakah mereka paket korup. haruskah saya tidak dapat mengunduh (wget, dll) kemudian menginstal menggunakan "dpkg -i <package>" di ubuntu? Jika demikian, saya mendapatkan ini:
Chris
oot @ ubuntu: / home / sysadmin # dpkg -i libgstreamer-plugins-base0.10-dev_0.10.36-1ubuntu0.1_i386.deb dpkg-deb: error: `libgstreamer-plugins-base0.10-dev_0.10.36-1ubuntu0. 1_i386.deb 'bukan arsip format debian dpkg: pemrosesan kesalahan libgstreamer-plugins-base0.10-dev_0.10.36-1ubuntu0.1_i386.deb (--install): subproses dpkg-deb --control mengembalikan status keluar kesalahan 2 Kesalahan ditemui saat memproses: libgstreamer-plugins-base0.10-dev_0.10.36-1ubuntu0.1_i386.deb
Chris

Jawaban:

18

Ternyata tidak ada masalah dengan apt-get tetapi perusahaan saya. Ada kebijakan internet yang memblokir semua kata kunci dengan 'video' di url. Saya menemukan ini dengan melihat isi libopencv-video2.3_2.3.1-7_i386.debdalam /var/cache/apt/archives/partial. Itu berisi html dari filter web memberi saya pemberitahuan bahwa saya melanggar internet saya bla bla bla.

Siapa yang akan tahu bahwa insinyur riset utama mereka akan memiliki kebijakan yang diterapkan sepele seperti ini?

Hal yang dipelajari: minta departemen TI Anda untuk memberikan blok alamat yang dikecualikan dari kebijakan bodoh dan menagihnya kembali untuk waktu yang terbuang oleh saya dan mereka yang mencoba membantu ...

Chris
sumber
7
Le menghela nafas. Harus mencintai orang-orang IT.
jrg
1
Proxy / firewall yang mengembalikan HTML palsu dengan 200 OK, bukan hanya memblokir koneksi adalah yang terburuk. :(
ish
Terima kasih, @ Chris! Bantuan besar Sekarang saya bisa berhenti bertanya-tanya apa yang sedang terjadi.
pasir
Sebagai seorang pemula, saya sangat ingin tahu tentang bagaimana Anda mendapatkan solusi itu (melihat ke dalam /var/cache/apt/archives/partial). Apakah ada di suatu tempat di halaman manual apt-get? Apakah Anda menemukan orang lain yang memiliki masalah? Sesuatu yang lain Saya benar-benar ingin menjadi lebih baik dalam menyelesaikan masalah tanpa Google jika memungkinkan.
joshreesjones
@ mathguy54 Saya mendapat kesalahan yang sama dengan OP. Saya mencoba mengunjungi tautan (menggunakan browser atau wget) dan file yang diterima sangat kecil. Ternyata htmldengan pesan "url diblokir"
aiao
4

Saya memiliki banyak masalah ini dan saya selalu berhasil memperbaikinya.

Sebagai contoh:

Failed to fetch http://us-east-1.ec2.archive.ubuntu.com/ubuntu/pool/universe/o/opencv/libopencv-video-dev_2.3.1-7_i386.deb

Dalam hal ini saya akan mengambil paket secara manual dari server utama seperti:

wget http://archive.ubuntu.com/ubuntu/pool/universe/o/opencv/libopencv-video-dev_2.3.1-7_i386.deb

Perhatikan saya menghapus barang-barang us-timur.

lalu jalankan:

sudo dpkg -i libopencv-video-dev_2.3.1-7_i386.deb

untuk menginstal paket.

Kemudian jalankan perintah asli yang Anda coba

Kegelapan
sumber
Mengapa apt tersedak? Apa konsekuensi dari mengunduh dan menginstal paket yang tepat?
NateS
1

Saya memperbaiki masalah ketidakcocokan ukuran ketika mencoba untuk meng-upgrade owncloud. Masalahnya url ppa salah.

Repo saya adalah untuk xubuntu:

http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_15.04/Release

Diubah ke ubuntu yang tepat:

http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Ubuntu_15.10/Release

Rangkuman: Pastikan Anda telah menyiapkan url ppa dengan benar untuk distribusi dan rasa Ubuntu Anda.

PeterM
sumber
0

Ok saya sudah mengalami masalah yang sama. Dalam kasus saya, itu sepenuhnya merupakan masalah yang saya buat sendiri. Saya sedang membangun paket baru untuk server paket internal dan hanya mengganti paket di server setiap kali tanpa menambah nomor versi (hanya saya menarik file).

Investigasi saya berjalan sebagai berikut ...

  • jalankan apt-cache showperintah - konfirmasikan filesize
  • tarik dengan file dengan tangan - konfirmasikan bahwa itu sebenarnya missmatch.
  • memeriksa secara manual filesize pada server paket itu cocok dengan apt-cacheoutput

Langkah-langkah yang dihasilkan menuntun saya untuk menyimpulkan bahwa tarikan saya. Deb telah di-cache .. oleh server proxy kami (berjalan dalam mode transparan). Saya mengkonfirmasi bahwa dengan melihat log proksi dan memang menampilkan cache "HIT"

Solusinya? jalankan wgetperintah lagi tetapi paksa proxy untuk menyegarkan

wget http://packages.example.com/pool/contrib/.../packagename.deb --no-cache

itu sudah cukup untuk mendapatkan proksi untuk menyegarkan file pada titik mana apt-getbekerja secara normal.

Jelas itu bentuk buruk untuk mengganti paket tanpa menabrak nomor versi tetapi kemungkinan penyebab lain dari masalah ini.

Vagnerr
sumber