Nhận kích thước không phù hợp với các điểm khác nhau khi sử dụng apt-get trên nhiều gói


9

Tôi gặp sự cố khi tải xuống một số gói bằng apt-get. Cho đến nay, tôi đã gặp phải vấn đề này với 'opencv' và 'guxer'. Với opencv, nó sẽ tìm nạp một số tệp sau đó trả về với lỗi bên dưới. Tôi đã thử một số máy nhân bản khác nhau và tất cả chúng đều lỗi trên cùng một tệp.

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?

Tôi đã chạy 'apt-cache show libopencv-video *' và nhận được:

Package: libopencv-video2.3
Priority: optional
Section: universe/libs
Installed-Size: 277
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Science Team <debian-science-maintainers@lists.alioth.debian.org>
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

Khi tôi so sánh kích thước tệp được báo cáo (105756), nó không khớp với kích thước của gói 'deb' khi tôi kéo nó xuống với wget.

Bạn có đề xuất nào để giải quyết vấn đề này khi sử dụng wget trên mỗi tệp bị lỗi và cài đặt chúng theo cách thủ công không?


Đó là 105756 Byte trong đó 106 là kB, do đó 105.756 kB là 106 kB khi được làm tròn. Đó là gần như nhau.
atenz

đúng nhưng kích thước tệp của tệp (cùng tệp chính xác) mà tôi tải xuống bằng wget là 103kB. có vẻ như mô tả không được cập nhật để phù hợp với các tập tin?
Chris

Kích thước được tải xuống dường như thay đổi một vài hoặc hàng trăm KB (+ hoặc -) tùy thuộc vào kích thước khi được tải xuống Bộ nhớ cục bộ. Tôi đã luôn nghĩ rằng nó là dành cho CRC hoặc FEC, nhưng sau đó đã nhầm lẫn về BASE trong đó các bit được lưu trữ. Nếu nó là như vậy, thì tôi không chắc chắn, có lẽ ai đó sẽ trả lời.
atenz

Tôi tự hỏi nếu họ là gói tham nhũng. Tôi không thể tải xuống (wget, v.v.) sau đó cài đặt bằng cách sử dụng "dpkg -i <gói>" trên Ubuntu? Nếu vậy, tôi sẽ nhận được điều này:
Chris

oot @ ubfox: / home / sysadmin # dpkg -i libgstreamer-plugins-base0.10-dev_0.10.36-1ubfox0.1_i386.deb dpkg-deb: error: `libgstreamer-plugins-base0.10-dev_0.10.36 1_i386.deb 'không phải là kho lưu trữ định dạng debian dpkg: xử lý lỗi libgstreamer-plugins-base0.10-dev_0.10.36-1ubfox0.1_i386.deb (--install): quy trình con dpkg-deb - điều khiển trả về trạng thái thoát lỗi 2 Lỗi đã gặp phải trong khi xử lý: libgstreamer-plugins-base0.10-dev_0.10.36-1ubfox0.1_i386.deb
Chris

Câu trả lời:


18

Hóa ra không có vấn đề gì với apt-get mà là công ty của tôi. Có một chính sách internet chặn tất cả các từ khóa có 'video' trong url. Tôi phát hiện ra điều này bằng cách xem các nội dung của libopencv-video2.3_2.3.1-7_i386.debtrong /var/cache/apt/archives/partial. Nó chứa html từ bộ lọc web cho tôi một thông báo rằng tôi vi phạm internet blah blah blah.

Ai có thể biết rằng kỹ sư nghiên cứu chính của họ sẽ có một chính sách được áp dụng tầm thường như thế này?

Bài học rút ra: yêu cầu bộ phận CNTT của bạn cung cấp một khối địa chỉ được miễn các chính sách ngu ngốc và trả lại cho họ thời gian lãng phí do tôi và những người cố gắng giúp đỡ ...


7
Thở dài. Phải yêu dân IT.
JRG

1
Proxy / tường lửa trả về HTML giả với 200 OK thay vì chỉ chặn kết nối là CÔNG CỤ. :(
ish

Cảm ơn, @Chris! Giúp đỡ rất nhiều. Bây giờ tôi có thể ngừng tự hỏi những gì đang xảy ra.
giờ trở lại

Là người mới bắt đầu, tôi rất tò mò về cách bạn có được giải pháp đó (nhìn vào /var/cache/apt/archives/partial). Có phải nó ở đâu đó trong trang hướng dẫn apt-get? Bạn đã tìm thấy một người khác có vấn đề? Thứ gì khác? Tôi thực sự muốn cải thiện vấn đề mà không cần Google khi có thể.
joshreesjones 22/03/2015

@ mathguy54 Tôi gặp lỗi tương tự như OP. Tôi đã cố truy cập liên kết (sử dụng trình duyệt hoặc wget) và tệp nhận được rất nhỏ. Hóa ra là htmlvới thông báo "url bị chặn"
aiao

4

Tôi đã có rất nhiều những vấn đề này và tôi luôn tìm cách khắc phục chúng.

Ví dụ:

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

Trong trường hợp này, tôi sẽ tìm nạp gói thủ công từ máy chủ chính như:

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

Lưu ý rằng tôi đã loại bỏ các công cụ phía đông.

sau đó chỉ cần chạy:

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

để cài đặt gói.

Sau đó, chỉ cần chạy lệnh ban đầu mà bạn đang cố gắng


Tại sao apt sặc? Sự phân nhánh của việc tải xuống và cài đặt gói mà apt bị nghẹn là gì?
NateS

1

Tôi đã khắc phục sự cố không khớp kích thước khi cố gắng nâng cấp owncloud. Vấn đề là sai ppa url.

Repo của tôi là dành cho xubfox:

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

Thay đổi thành ubfox thích hợp:

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

Tóm tắt: Đảm bảo bạn đã thiết lập đúng các url của ppa để phân phối và hương vị Ubuntu.


0

Ok tôi đã trải qua vấn đề tương tự. Trong trường hợp của tôi, đó là một vấn đề hoàn toàn do chính tôi tạo ra. Tôi đã xây dựng các gói mới cho một máy chủ gói nội bộ và chỉ thay thế một gói trên máy chủ mỗi lần mà không tăng số phiên bản (chỉ tôi kéo các tệp).

Các cuộc điều tra của tôi đã diễn ra như sau ...

  • chạy apt-cache showlệnh - xác nhận kích thước tập tin
  • kéo bằng tập tin bằng tay - xác nhận rằng trên thực tế nó là một lỗi.
  • kiểm tra thủ công kích thước tệp trên máy chủ gói nó khớp với apt-cacheđầu ra

Các bước kết quả dẫn đến tôi kết luận rằng việc kéo .deb của tôi đã được lưu vào bộ đệm .. bởi máy chủ proxy của chúng tôi (chạy ở chế độ trong suốt). Tôi đã xác nhận rằng bằng cách xem nhật ký proxy và nó thực sự hiển thị bộ đệm "HIT"

Giải pháp? chạy lại wgetlệnh nhưng buộc proxy phải làm mới

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

Thế là đủ để có được proxy để làm mới tập tin tại thời điểm đó apt-gethoạt động bình thường.

Rõ ràng hình thức xấu của nó để thay thế một gói mà không làm hỏng số phiên bản nhưng một nguyên nhân có thể khác của vấn đề này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.