Ich habe eine virtuelle Ubuntu 12.04-Box, die ich mit Vagrant instanziiere.
git clone https://github.com/spuder/puppet-gitlab
vagrant up
Sobald die Vagrant-Box ausgeführt wird apt-get update
, erhalte ich die folgende Fehlermeldung.
...
W: Failed to fetch gzip:/var/lib/apt/lists/partial/apt.puppetlabs.com_dists_precise_main_binary-amd64_Packages Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/apt.puppetlabs.com_dists_precise_main_binary-i386_Packages Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/apt.puppetlabs.com_dists_precise_dependencies_binary-i386_Packages Hash Sum mismatch
W: Failed to fetch http://br.archive.ubuntu.com/ubuntu/dists/precise-updates/restricted/binary-i386/Packages 404 Not Found
Dinge, die ich versucht habe, um diesen Fehler zu umgehen.
- Verwendet 3 verschiedene Ubuntu 12.04 Boxen von ' http://www.vagrantbox.es '
Lösungsvorschlag hier :
sudo rm -rf / var / lib / apt / lists / *
Aktualisierung von
sudo apt-get sudo apt-get cleanPuppet Labs Pakete entfernt und neu eingelesen
Ich habe auch ähnliche Vorschläge ausprobiert, die ich auf den ersten Seiten von Google gefunden habe. Ich habe sogar mehrere Computer und mehrere Internetverbindungen ausprobiert.
Die Tatsache, dass dies mehrere Ubuntu-VMs auf mehreren Internetverbindungen beeinflusst hat, lässt mich denken, dass mit dem Ubuntu-Repo etwas nicht stimmt.
Wie kann ich sonst versuchen, dieses Problem zu beheben?
Aktualisieren
Ich habe versucht, '/ var / lib / apt / lists / partial' zu bereinigen und apt-get clean auszuführen. Dann habe ich die Quellen in / etc / sources / list durch die hier vorgeschlagenen Amazon Mirrors ersetzt :
Ich bekomme immer noch einen ähnlichen Fehler
Fetched 18.9 MB in 10s (1,865 kB/s)
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_main_binary-amd64_Packages Hash Sum mismatch
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_binary-amd64_Packages Hash Sum mismatch
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_multiverse_binary-amd64_Packages Hash Sum mismatch
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_main_binary-i386_Packages Hash Sum mismatch
E: Some index files failed to download. They have been ignored, or old ones used instead.
Update2
Ich habe zu Hause 2 Internetverbindungen, beide haben den gleichen Fehler gemeldet. Sobald ich meinen Laptop zu meiner Internetverbindung mitgenommen hatte, verschwand das Problem.
Ich bin immer noch gespannt, warum meine Internetverbindung einen Unterschied macht.
Update3
Siehe meine Antwort unten für eine Erklärung. Mein Internetfilter hat den Download beschädigt.
Ich werde die Frage umformulieren, da es noch keine Antworten gibt.
Gibt es eine Möglichkeit, Hash-Summen-Fehlanpassungen in apt-get zu überschreiben?
Antworten:
Zunächst sollten Sie verstehen, warum Hashsummenfehler auftreten. Im Allgemeinen gibt es zwei Gründe:
Erstens verwenden einige apt-Repositorys LZMA (.xz) -komprimierte Metadaten. apt before version 1.0 dekomprimiert LZMA-Archive nicht richtig (manchmal) und gibt den Hash-Summen-Mismatch-Fehler aus.
Hierfür gibt es zwei Möglichkeiten:
Schauen Sie sich diesen Blog-Beitrag an, den ich zu diesem Problem geschrieben habe, in dem beide Problemumgehungen ausführlicher erläutert werden.
Zweitens sind APT-Repositorys von Natur aus rassig . Die eigentlichen APT-Metadaten sind fehlerhaft und das Design macht es für geeignete Clients unmöglich, die Repository-Metadaten auf konsistente Weise herunterzuladen, wenn
apt-get update
dies während der Aktualisierung des Repositorys geschieht.Hierfür gibt es zwei Möglichkeiten:
apt-get clean
gefolgt von ausrm -rf /var/lib/apt/lists/*
. Als nächstes laufenapt-get update
. Dadurch werden alle Metadaten erneut heruntergeladen. Wenn sich das Repository, zu dem Sie eine Verbindung herstellen möchten, während der Ausführung nicht selbst aktualisiertapt-get update
, ist dies in Ordnung. Andernfalls müssen Sie dies erneut tun.quelle
Herausgefunden.
Meine beiden Computer sind in jeder Hinsicht identisch, außer dass ich auf meinem PC einen Internetfilter installiert habe.
Der k9-Internetfilter hat eine Kernel-Erweiterung installiert, die anscheinend den Datenverkehr stört.
Sobald ich den Filter deinstalliert hatte, verschwand das Problem.
Ich recherchiere immer noch, ob es eine Möglichkeit gibt
apt-get update
, Hash-Summen-Inkongruenzen als Workaround zu ignorieren.quelle