it-swarm.dev

Problémy se stahováním seznamu balíčků z důvodu chyby „Neshoda součtu“

Při kontrole aktualizací se zobrazí chybová zpráva „Nepodařilo se stáhnout informace o úložišti“.

To je to, co přichází pod detaily:

W: Failed to fetch gzip:/var/lib/apt/lists/partial/us.archive.ubuntu.com_ubuntu_dists_natty_main_source_Sources  Hash Sum mismatch, 
E: Some index files failed to download. They have been ignored, or old ones used instead.
402
Rob

Stačí odebrat veškerý obsah uživatele /var/lib/apt/lists adresář:

Sudo rm -rf /var/lib/apt/lists/*

pak spusťte:

Sudo apt-get update
470
Lorem

Toto je známý problém a je zhoršován pro klienty za proxy cache. Některé velké organizace a poskytovatelé internetových služeb (zejména ve vzdálených částech světa) mají průhledné mezipaměti, o kterých nemusíte vědět.

Zásadní problém spočívá v tom, že formát repozitáře apt podléhá při aktualizaci zrcadla rasovým podmínkám. Tento problém se týká zejména repozitářů, které se rychle mění, jako je například vývojové vydání.

Pokrok v opravě můžete sledovat v tato chyba (v této chybě se označte jako „ovlivňuje mě také“) a tento plán . Uvědomte si však, že se jedná o složitý problém a řešení může trvat více než jedno vydání.

130
Robie Basak

Nejjednodušší způsob, jak to vyřešit, je:

Sudo apt-get clean
Sudo apt-get update
103
realhu

Jediné řešení, které pro mě pracovalo, je z nix.stackexchange .

Stává se to proto, že existuje známá chyba, kterou apt je, a řešením je aktualizace jinou metodou komprese, takže soubory se načtou správně a kontrolní součet uspěje.

Zkuste to:

Sudo rm -rf /var/lib/apt/lists/partial
Sudo apt-get update -o Acquire::CompressionTypes::Order::=gz

(děkuji @brook_hong z komentářů k rm části)

58
Amir Uval

Stále jsem měl problém po odstranění adresářů a provedení Sudo apt-get update.
Můj problém vyřešil pouze následující krok:

Sudo sed -i -re 's/\w+\.archive\.ubuntu\.com/archive.ubuntu.com/g' /etc/apt/sources.list

Nevím, jestli je to správný způsob, jak to opravit ...
Našel jsem řešení zde .

44
m13r

K tomu může dojít, když vaše zrcadlo není aktuální nebo pokud se chyby přetížení nezobrazí. Můžete buď chvíli počkat a zkusit to znovu, nebo přepnout na jiné zrcadlo:

23
Jorge Castro

Pokud jste za proxy, vytvořte soubor s názvem 99fixbadproxy v /etc/apt/apt.conf.d/:

Sudo gedit /etc/apt/apt.conf.d/99fixbadproxy

Vložte to do 99fixbadproxy a uložte jej:

Acquire::http::Pipeline-Depth 0;
Acquire::http::No-Cache true;
Acquire::BrokenProxy    true;

Nyní spusťte příkaz aktualizace:

Sudo apt-get update
12
Musaffa

Následující příkazy mohou vyřešit váš problém.

Sudo rm -R /var/lib/apt/lists/partial/*

a pak

Sudo apt-get update && Sudo apt-get upgrade

vyřeší to váš problém. Také jsem čelil stejnému problému, ale výše uvedené příkazy tento problém vyřešily. Vyzkoušejte je.

Reference řešení

5
Shaharia Azam

Měl jsem stejný problém a všechna řešení poskytnutá pomocí terminálu nepomohla.

Pro mě to bylo tím, že šli do:

Nastavení → Software a aktualizace → Software Ubuntu: Stáhnout z: Change Local to Main Server.

Zahájí opětovné načtení repozitáře a aktualizaci. Když zadám:

Sudo apt-get update

Poté už nebyl problém. Používám Ubuntu 14.04.4 LTS.

3
habibun

přijatá odpověď bude zřídka fungovat, pokud máte problém s CDN (síť pro doručování obsahu - mezipaměti/zrcadla po celém světě obsahující seznamy apt a balíčky). Bude to fungovat, pokud a) používáte PPA nebo lokální zrcadla nebo b) máte pouze jediný nesoulad, který chcete vyřešit.

Poznámka: Pokud máte v protokolu ve výše uvedené otázce konkrétní chybovou zprávu, měla by přijatá odpověď vždy fungovat. Existuje však několik dalších otázek, které byly uzavřeny jako duplikáty této otázky, kde přijatá odpověď není dostatečná.

Neubližuje to, ale pokuste se začít:

Sudo rm -rf /var/lib/apt/lists/*
Sudo apt-get update

To může stačit k pokračování s Sudo apt-get upgrade nebo jiné navazující příkazy.

Ale pokud to nefunguje ...

Chyby „Nesoulad součtu součtů“ můžete obdržet také z tohoto příkazu. Pokud k tomu dojde, spusťte:

Sudo apt-get update --fix-missing

Je možné, že i tento příkaz vyvolá chyby "Neshoda součtu", protože problém může pocházet z přechodných chyb síťového obsahu. Pokud ano, pokračujte v opětovném spuštění výše uvedeného --fix-missing příkaz, dokud nebude úspěšně dokončen. Například:

until Sudo apt-get update --fix-missing; do echo trying again; done

(Mělo by to pokročit s každým spuštěním apt-get update --fix-missing; pokud po sobě jdoucí běhy nesnižují chyby směrem k nule, stiskněte Ctrl-c přerušit smyčku. Poté se vraťte na začátek této odpovědi odstraněním obsahu /var/lib/apt/lists a zkusit znovu.)

Po této aktualizaci může aktualizace fungovat, ale jistě, nejprve spusťte apt-get clean, takto:

Sudo apt-get clean
Sudo apt-get update

Pokud to děláte v rámci přípravy na apt-get upgrade, je možné (dokonce pravděpodobné, pokud byste měli dostatek nesouladů, které by vyžadovaly aktualizaci několikrát), upgrade selže s chybami „Nesoulad součtu součtů“. Pokud ano, přidejte --fix-missing k upgradu:

Sudo apt-get clean
Sudo apt-get upgrade --fix-missing

a zkusit znovu. (apt-get upgrade s --fix-missing se také pokusí zadržet selhávající balíčky a pokračovat v dalších, takže byste měli vidět nějaký další pokrok při spouštění tohoto alespoň jednou.)

Ale pokud to stále nefunguje ...

Jako dřívější until Sudo... příkaz, můžete získat nějaký další postup opakováním tohoto příkazu (vždy předcházel výše uvedenému příkazu clean), který můžete dokonce automatizovat s

until (Sudo apt-get clean; Sudo apt-get upgrade --fix-missing --yes); do echo trying again; done

ale obvykle upgraduje většinu upgradovatelných balíčků při prvním spuštění pomocí --fix-missing a poté uvíznou ve stejných balíčcích, takže nedochází k dalšímu pokroku. V tuto chvíli se musíte vrátit zpět na začátek pomocí Sudo rm -rf /var/lib/apt/lists/* a zkusit znovu. Stojí za to vyzkoušet celý tento proces dvakrát nebo třikrát, zejména pokud máte desítky nebo stovky upgradovatelných balíčků.

3
Trey

Měl jsem podobný problém a vyřešil jsem to otevřením theh aplikace „Software & Updates“ a na kartě „Ubuntu Software“ změnou hodnoty „Download from“ (v tomto rozevíracím seznamu zkuste vybrat například Main) Server, pokud to tak nebylo).

1
Andrea Pravato

Nevím, že je to správné řešení nebo ne, ale udělal jsem následující a chybová zpráva je pryč:

Po zadání Sudo apt-get update v terminálu mi dává jména některých balíčků, které způsobují chybu, pak jsem udělal následující:

Správce aktualizací (aktualizace softwaru) → Nastavení → Konfigurovat zdroje softwaru → Jiný software [karta] → Zrušte zaškrtnutí balíčků

Po stisknutí spodní části „Zavřít“ začal správce aktualizací znovu automaticky kontrolovat aktualizaci a viděl jsem tuto zprávu: „software v tomto počítači je aktuální. Naposledy zkontrolováno před 2 sekundami.“

Kubuntu 12.04

1
Hassan.J.

Nedávno jsem nainstaloval Ubuntu 17.10 a dostával stejnou chybu Hash Sum Mismatch pro některé repozitáře. Šel jsem do Software and Checked Source, jak je ukázáno níže a pro stahování repozitáře z terminálu nebyly žádné další problémy.

My Software and Update Section

1
Rahul Soshte

Jako @ @ robie-basak jsem použil apt-cacher-ng jako zrcadlení do mezipaměti. Takže jsem odebrat proxy a problém vyřešen.

Odstraňuji proxy ze souboru /etc/apt/apt.conf.d/01proxy:

#Acquire::http::Proxy "http://xxx.xx.xx.xx:4321";

Pak je třeba:

Sudo rm -rf /var/lib/apt/lists/*
Sudo aptitude update
Sudo aptitude upgrade
1
shgnInc

Měl jsem stejný problém a všechna řešení poskytnutá pomocí terminálu nepomohla.

Pro mě to bylo tím, že šli do:

Nastavení → Software a aktualizace → Jiný software: Zrušte zaškrtnutí všech políček a stiskněte Zavřít.

Zahájí opětovné načtení repozitáře a aktualizaci. Když zadám:

Sudo apt-get update

Poté už nebyl problém. Používám Ubuntu 13.10.

1
Paul London

20190112 #Errors #apt #Fix #Updates Nepodařilo se načíst ... Neshoda součtu hash

  1. Spusťte apt-get a zjistěte, jaká klíčová slova hledat v /etc/apt:
    • Aktualizace $ sudo apt-get -y
    • ...
    • Chyba: 77 http://au.archive.ubuntu.com/ubuntu xenial-updates/multiverse DEP-11 64x64 Icons
    • Neshoda Hash Sum
    • ...
    • V tomto případě je klíčové slovo „DEP-11“
  2. Prohledat /etc/apt strom pro klíčová slova:
    • $ Sudo find/etc/apt -type f -exec egrep -in "DEP-11" "{}"/dev/null ";"
    • /apt.conf.d/50appstream:1:## Tento soubor poskytuje aplikace appstreamcli (1) ke stažení DEP-11
    • /apt.conf.d/50appstream:6: deb :: DEP-11 {
    • /apt.conf.d/50appstream:9: Popis "$ (RELEASE)/$ (COMPONENT) $ (NATIVE_ARCHITECTURE) DEP-11 Metadata";
    • /apt.conf.d/50appstream:15: # Ikony normální velikosti pro komponenty GUI popsané v DEP-11
    • /apt.conf.d/50appstream:17: deb :: DEP-11-icons {
    • /apt.conf.d/50appstream:20: Popis "$ (RELEASE)/$ (COMPONENT) DEP-11 64x64 Ikony";
    • /apt.conf.d/50appstream:27: # metadata YAML DEP-11.
    • /apt.conf.d/50appstream:28: deb :: DEP-11-icons-hidpi {
    • /apt.conf.d/50appstream:31: Popis "$ (RELEASE)/$ (COMPONENT) DEP-11 128x128 Ikony";
  3. Poté, co jste našli porušující seznam, přesuňte jej někam pro případ, že to nebude fungovat:

    Sudo mv -f /apt.conf.d/50appstream /tmp  
    
  4. Vyčištění /var/lib/apt:

    Sudo apt-get -y clean  
    Sudo rm -rf /var/lib/apt/lists/*  
    Sudo find /var/lib/apt -type d -name "partial" -exec rm -rf "{}" ";"  
    
  5. Zkuste aktualizovat nyní, mělo by to fungovat nyní:

    Sudo apt-get -y update  
    
0
Malcolm Boekhoff

Stalo se to pro mě na Ubuntu 16.04 a žádné z nejlepších hlasovaných řešení nefungovalo. Řešením bylo upgradování balíčků:

Sudo apt-get update    # this will fail
Sudo apt-get upgrade
Sudo apt-get update    # this will succeed

Nejste si jisti, zda čištění starých seznamů (Sudo rm -rf /var/lib/apt/lists/* a/nebo Sudo apt-get clean) pomohl nebo ne! V případě potřeby je použijte.

0
Mohammad Dehghan

Ve svém Ubuntu 18.04 jsem se setkal se stejným problémem, níže je moje praktická zkušenost:

  1. Odebrat proxy v /etc/apt/apt.conf
  2. Změna na oficiální apt sources.list /etc/apt/sources.list
  3. Spustit Sudo rm -rf /var/lib/apt/lists/*
  4. Vyčistit balíčky Sudo apt autoremove -y && Sudo apt autoclean -y
  5. Aktualizace a upgrade. Sudo apt update && Sudo apt upgrade -y && Sudo apt autoremove -y && Sudo apt autoclean -y

Hotovo!

0
JsonBruce

Spuštěním tohoto příkazu jsem vyřešil všechny nainstalované balíčky:

Sudo apt-get install PACKAGENAME

Pro každý balíček. Nyní jsou nainstalovány a chyba „Neshoda součtu“ zmizela.

0
BiggJJ

To se může stát, pokud provozujete router s rodičovskou kontrolou a havent umístí Raspberry Pi do „nespravovaného“ seznamu. Pro mě jsem viděl, že adresa URL byla přesměrována do kruhové domény spravované routerem.

Takže jsem právě přidal svůj pí do neřízeného seznamu a fungovalo to dobře.

0
brad parks

Nic pro mě nefungovalo. Po vyzkoušení a navrhovaných řešeních jsem nakonec rozbité balíčky stáhl ručně, zkopíroval jsem je do/var/cache/apt/archive a odstranil jsem rozbité balíčky z/var/cache/apt/archives/částečné.

0
Ravi Misra