Получение «несоответствия размера» при использовании apt-get на нескольких пакетах

9

У меня возникли проблемы с загрузкой нескольких пакетов с помощью apt-get. До сих пор я сталкивался с этим «opencv» и «gstreamer». С opencv он выберет несколько файлов и вернется с ошибкой ниже. Я пробовал несколько разных зеркал, и они все ошибки в одном файле (файлах).

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?

Я запускал 'apt-cache show libopencv-video *' и получил:

Package: libopencv-video2.3
Priority: optional
Section: universe/libs
Installed-Size: 277
Maintainer: Ubuntu Developers <ubun[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

Когда я сравниваю сообщенный файл (105756), он не соответствует размеру пакета «deb», когда я вытаскиваю его с помощью wget.

Любые предложения по решению этой проблемы, не связанные с использованием wget на каждом из файлов с ошибкой и их установка вручную?

    
задан Chris 19.07.2012 в 16:20
источник

4 ответа

18

Оказывается, нет проблемы с apt-get, но моя компания. Существует интернет-политика, которая блокирует все ключевые слова с помощью «видео» в URL-адресе. Я обнаружил это, просмотрев содержимое libopencv-video2.3_2.3.1-7_i386.deb в /var/cache/apt/archives/partial . Он содержал html из веб-фильтра, давая мне уведомление о том, что я нарушаю свой интернет-бла-бла-бла.

Кто бы мог знать, что у их ведущего инженера-исследователя была бы политика, примененная настолько тривиальной, как это?

Извлеченный урок: попросите свой ИТ-отдел предоставить блок адресов, которые освобождаются от глупых политик и откладывают их обратно на время, потраченное мной и теми, кто пытается помочь ...

    
ответ дан Chris 20.07.2012 в 12:35
4

У меня было много этих проблем, и мне всегда удавалось исправить их.

Например:

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

В этом случае я бы взял пакет вручную с основного сервера, например:

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

Заметьте, что я удалил материал us-east.

затем просто запустите:

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

, чтобы установить пакет.

Затем просто запустите оригинальную команду, которую вы пытались

    
ответ дан Darkness 29.07.2012 в 13:54
1

Я исправил ошибку несоответствия размера при попытке обновить owncloud. Проблема была неправильной ppa url.

Мой репо был для xubuntu:

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

Изменено для правильного ubuntu:

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

Резюме: Убедитесь, что вы правильно настроили URL-адреса ppa для вашего распространения и вкуса Ubuntu.

    
ответ дан PeterM 12.11.2015 в 12:12
0

Хорошо, я испытал эту же проблему. В моем случае это была проблема целиком из моих собственных решений. Я создавал новые пакеты для внутреннего сервера пакетов и просто заменял пакет на сервере каждый раз, не увеличивая номера версий (только я потянул файлы).

Мои исследования прошли следующим образом ...

  • запустите команду apt-cache show - подтвердите размер файла
  • потяните за файл вручную - подтвердите, что это действительно ошибка.
  • вручную проверьте размер файла на сервере пакета, он сопоставил выход apt-cache

В результате я приведу к выводу, что мое приложение .deb было кэшировано .. нашим прокси-сервером (работает в прозрачном режиме). Я подтвердил это, посмотрев журналы прокси-сервера, и на самом деле был показан кеш «HIT»

Решение? снова запустите команду wget , но заставьте прокси обновить

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

этого было достаточно, чтобы заставить прокси обновить файл, в какой точке apt-get работал нормально.

Очевидно, что его плохая форма для замены пакета, не нападая на номер версии, но и на другую возможную причину этой проблемы.

    
ответ дан Vagnerr 13.10.2016 в 10:13