Apt-Get sử dụng Apt-Cacher NG không thể tìm nạp các gói với hàm băm không khớp


8

Tôi có một máy đang sử dụng Apt-Cacher NG đang chạy trên một máy khác làm proxy lưu trữ.

Khi tôi cố chạy sudo apt-get updatetôi gặp các lỗi sau:

W: Failed to fetch gzip:/var/lib/apt/lists/partial/it.archive.ubuntu.com_ubuntu_dists_oneiric-updates_main_source_Sources  Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/it.archive.ubuntu.com_ubuntu_dists_oneiric-updates_main_binary-amd64_Packages  Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/it.archive.ubuntu.com_ubuntu_dists_oneiric-updates_universe_binary-amd64_Packages  Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/it.archive.ubuntu.com_ubuntu_dists_oneiric-updates_main_binary-i386_Packages  Hash Sum mismatch
E: Some index files failed to download. They have been ignored, or old ones used instead.

Thư mục /etc/apt/source.list.d trống.

Để khắc phục điều đó tôi đã thử những điều sau đây nhưng không thành công:

Giải pháp 1:

sudo rm -fr /var/lib/apt/lists
sudo mkdir -p /var/lib/apt/lists/partial
sudo apt-get clean
sudo apt-get autoclean

Giải pháp 2:

sudo apt-get update -o Acquire::http::No-Cache=True

Bất cứ đề nghị nào?


Tôi đã thấy hành vi này đôi khi. Chạy sudo apt-get update nhiều lần liên tục giúp ích trong trường hợp này nhưng tôi không biết tại sao, không bao giờ điều tra vấn đề này kỹ hơn.
oddfellow

1
Điều này cũng xảy ra trên các máy không sử dụng Apt-Cacher NG. Trong những trường hợp đó, Giải pháp 1 khắc phục sự cố.
Marco Lackovic

Câu trả lời:


11

Tôi sẽ đề nghị chuyển khỏi APT-cacher-ng và kiểm tra Squid-deb-proxy.

APT-cacher-ng đã được chứng minh là rất có lỗi trong kinh nghiệm của tôi và hàng tấn báo cáo lỗi là nổi bật. Chỉ gần đây, nó đã được đề xuất một lần nữa để được bỏ chặn trong Debian khi một số lỗi lớn bị xóa sạch. Đối với Ubuntu tôi đã chuyển sang Squid-deb-proxy từ lâu và tôi không hối tiếc. Đó là một sự thay thế tuyệt vời và APT-cacher tốt nhất mà tôi đã tìm thấy.

Đối với Squid-deb-proxy, chỉ cần cài đặt gói squid-deb-proxyvà thêm tên miền đích được phép vào một tệp mới /etc/squid-deb-proxy/mirror-dstdomain.acl.d. Như một phần thưởng, khách hàng có thể tự động khám phá các máy kích hoạt bộ đệm trong mạng cục bộ bằng cách squid-deb-proxy-clientcài đặt gói.


6

Bạn có thể khắc phục điều này ngay bây giờ bằng cách chạy:

http://your-cache-server:3142/acng-report.html?abortOnErrors=aOe&byPath=bP&byChecksum=bS&truncNow=tN&incomAsDamaged=iad&purgeNow=pN&doExpire=Start+Scan+and%2For+Expiration&calcSize=cs&asNeeded=an#bottom

Điều này sẽ xóa tất cả các tập tin bị hỏng trong bộ nhớ cache của bạn.

Để làm permananet này, hãy xem https://www.unix-ag.uni-kl.de/~bloch/acng/html/maint.html#auto-cleanup

Về cơ bản, bạn có thể thiết lập cron dọn dẹp bộ đệm hàng ngày để thực hiện kiểm tra tổng kiểm tra đầy đủ trên toàn bộ bộ đệm của bạn. Điều này sẽ bắt tất cả các kích thước xấu và bất kỳ tham nhũng nào khác và xóa các tệp đó. Tôi đã chỉnh sửa /etc/cron.daily/apt-cacher-ngvà thêm vào sau đây sau khi nhận xét:

export ACNGREQ="abortOnErrors=aOe&byPath=bP&byChecksum=bS&truncNow=tN&incomAsDamaged=iad&purgeNow=pN&doExpire=Start+Scan+and%2For+Expiration&calcSize=cs&asNeeded=an"

Điều này tương đương với việc nhấp vào tất cả các tùy chọn hết hạn trên trang bảo trì ngoại trừ "Bỏ qua kiểm tra tiêu đề ..."


1
Đây là câu trả lời duy nhất thoát khỏi lỗi trên hệ thống của tôi!
Jan

Tôi nghĩ rằng bạn có thể cần một ?lúc bắt đầu chuỗi xuất khẩu của bạn.
TafT

3

Gợi ý 1

sudo rm /var/lib/apt/lists/*gzip*
sudo rm /var/lib/apt/lists/partial/*gzip*
sudo apt-get update

Gợi ý 2

sudo rm -f /var/cache/apt/partial/*
sudo rm -f /var/cache/apt/*.deb
sudo apt-get update

Gợi ý 3

sudo touch /etc/apt/apt.conf.d/no-cache
sudo nano /etc/apt/apt.conf.d/no-cache

Và dán cái này vào:

Acquire::http {No-Cache=True;};

Bây giờ cố gắng:

sudo apt-get update

1
Cảm ơn nhưng không ai trong ba người làm việc.
Marco Lackovic

Làm việc như một thiết lập quyến rũ không có bộ nhớ cache thành đúng! Cảm ơn rất nhiều! :)
mhenrixon

3

Tôi đã chiến đấu RẤT thường xuyên (1 trong 50 lượt tải xuống) với các lỗi "Hash Sum không khớp" và "Tiêu đề không hợp lệ" bằng cách sử dụng apt-cacher-ngtrên Ubuntu Precise 12.04 LTS kể từ ngày nâng cấp bản phân phối. Ubuntu Precise sử dụng apt-cacher-ngphiên bản 0.7.2-1, cho đến nay có NHIỀU sửa lỗi cho phần mềm này và phiên bản mới hơn: 0.7.26-1 ổn định hơn nhiều.

Tôi đã cài đặt phiên bản Ubuntu apt-cacher-ngQuantal từ gói.ubfox.com, phiên bản 0.7.26-1.

Tôi đặc biệt khuyên bạn nên lấy phiên bản tương lai / thử nghiệm apt-cacher-ngvà cài đặt thủ công gói mới hơn này.


1

Nâng cấp của tôi sẽ luôn luôn gần như thành công - 95% của các tập tin sẽ tải thông qua proxy, để lại có lẽ là cuối cùng ~ 100 file không với 'băm sum không phù hợp', và không ai trong số các giải pháp đề xuất sẽ bao giờ làm việc.

Và sau đó, chỉ vì cười và cười khúc khích, tôi chuyển 01proxysang 01proxy.ng, chạy aptitude update, sau đó update-managervà chọn nâng cấp phân phối. Nó đã tiến hành tải xuống các tệp còn lại từ archive.ubfox.com (~ 70M thay vì ~ 1G) và phần còn lại của quá trình nâng cấp diễn ra suôn sẻ. Sau khi khởi động lại, tôi chuyển 01proxy.ng trở lại 01proxy và mọi thứ đã trở lại bình thường.

Tôi đã thực hiện điều này hai lần bây giờ, một lần trên chính máy chủ proxy và một lần trên máy khách và cả hai đều thành công sau khi thất bại (ở mức 95% đó) khi đi qua proxy.


1

Loại bỏ các /var/cache/apt-cacher-ng/download.virtualbox.orgthư mục đã giúp tôi giải quyết vấn đề với Failed to fetch ... Hash Sum mismatchtrên apt-get updatengăn virtualbox-4.3gói từ Oracle server.


0

Gợi ý 4

Chạy sudo apt-get update && sudo apt-get upgrade -ytrên máy chủ Apt-Cacher NG có thể khắc phục sự cố. Bạn cần phải làm điều đó mỗi khi vấn đề xảy ra.

Gợi ý 5

Đôi khi vấn đề nằm ở gương: thay đổi gương trong /etc/apt/sources.list, cả trên máy chủ và máy khách, có thể khắc phục sự cố này.


0

Bạn cũng có thể xóa toàn bộ thư mục kho lưu trữ

rm -r /var/cache/apt-cacher-ng/<repository_folder>

trong đó gói có hàm không khớp tổng băm được lưu trữ.

Trong lần yêu cầu tiếp theo, một thư mục mới với tổng băm sạch sẽ sẽ tự động được tạo bởi apt-cacher-ng.

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.