O Apt-Get usando o Apt-Cacher NG não consegue buscar pacotes com incompatibilidade de soma hash

8

Eu tenho uma máquina que está usando o Apt-Cacher NG rodando em outra máquina como proxy de cache.

Quando tento executar sudo apt-get update , obtenho os seguintes erros:

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.

O diretório /etc/apt/sources.list.d está vazio.

Para corrigir isso, eu já tentei o seguinte sem sucesso:

Solução 1:

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

Solução 2:

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

Alguma sugestão?

    
por Marco Lackovic 05.04.2012 / 21:17

8 respostas

11

Eu sugiro que você mude o APT-cacher-ng e verifique o Squid-deb-proxy.

APT-cacher-ng provou ser muito buggy na minha experiência e muitos relatórios de bugs são notáveis. Só recentemente foi proposto novamente para ser desbloqueado no Debian agora que alguns dos principais bugs são Esmagado. Para o Ubuntu, mudei para o Squid-deb-proxy há muito tempo e não me arrependo. É uma ótima alternativa e o melhor APT-cacher que eu já vi.

Para o Squid-deb-proxy, basta instalar o pacote squid-deb-proxy e adicionar domínios de destino permitidos em um novo arquivo em /etc/squid-deb-proxy/mirror-dstdomain.acl.d . Como bônus, os clientes podem descobrir automaticamente máquinas ativadas para armazenamento em cache na rede local com o squid-deb-proxy-client pacote instalado.

    
por gertvdijk 28.12.2012 / 16:34
6

Você pode corrigir isso agora executando:

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

Isso excluirá todos os arquivos quebrados no seu cache.

Para tornar essa permananet, dê uma olhada no link

Basicamente, você pode configurar o cron diário de limpeza de cache para fazer uma correspondência de soma de verificação completa em todo o seu cache. Isso vai pegar todos os tamanhos ruins e qualquer outra corrupção e limpar esses arquivos. Eu editei /etc/cron.daily/apt-cacher-ng e adicionei o seguinte após os comentários:

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

Isso equivale a clicar em todas as opções de expiração na página de manutenção, exceto "Ignorar cheques de cabeçalho ..."

    
por Mark Porter 09.03.2014 / 16:15
3

Sugestão 1

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

Sugestão 2

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

Sugestão 3

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

e cole isso em:

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

Agora tente:

sudo apt-get update
    
por SirCharlo 05.04.2012 / 21:40
3

Eu tenho lutado MUITO frequentemente (1 em 50 downloads) com erros "Hash Sum Mismatch" e "Invalid Header" usando apt-cacher-ng no Ubuntu Precise 12.04 LTS desde o dia da atualização da distro. O Ubuntu Precise usa apt-cacher-ng versão 0.7.2-1, até hoje existem MUITAS correções de bugs neste software, e a versão mais recente: 0.7.26-1 é muito mais estável.

Instalei a versão do Ubuntu Quantal de apt-cacher-ng em packages.ubuntu.com, que é a versão 0.7.26-1.

Eu recomendo strongmente pegar a versão futura / testing de apt-cacher-ng e instalar manualmente este novo pacote.

    
por Ron Allred 14.07.2012 / 02:03
1

Minhas atualizações seriam sempre quase bem-sucedidas - 95% dos arquivos seriam baixados através do proxy, deixando talvez os últimos ~ 100 arquivos com falha de 'hash sum mismatch' e nenhuma das soluções propostas jamais funcionaria.

E então, apenas para sorrisos e risadinhas, mudei 01proxy para 01proxy.ng , corri aptitude update , depois update-manager e selecionei a distribuição-atualização. Procedeu-se a baixar os arquivos restantes do arquivo archive.ubuntu.com (~ 70M em vez de ~ 1G), e o restante da atualização ocorreu sem problemas. Após a reinicialização, mudei o 01proxy.ng de volta para o 01proxy, e tudo voltou ao normal.

Já fiz isso duas vezes agora, uma vez no próprio servidor proxy e uma vez em um cliente, e as duas tiveram sucesso após terem falhado (naquela marca de 95%) ao passar pelo proxy.

    
por user117247 28.12.2012 / 16:23
1

A remoção da pasta /var/cache/apt-cacher-ng/download.virtualbox.org ajudou-me a corrigir o problema com Failed to fetch ... Hash Sum mismatch on apt-get update que impediu o pacote virtualbox-4.3 do servidor Oracle.

    
por Adam Ryczkowski 14.02.2015 / 08:01
0

Sugestão 4

A execução de sudo apt-get update && sudo apt-get upgrade -y no servidor do Apt-Cacher NG pode corrigir o problema. Você precisa fazer isso toda vez que ocorrer o problema.

Sugestão 5

Às vezes, o problema está no espelho: alterar o espelho em /etc/apt/sources.list , tanto no servidor quanto nos clientes, pode corrigir esse problema.

    
por Marco Lackovic 27.04.2012 / 17:17
0

Você também pode remover toda a pasta do repositório

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

onde o pacote com a incompatibilidade de soma de hash é armazenado.

No próximo apt, solicite uma nova pasta com um hash sum limpo, criada automaticamente pelo apt-cacher-ng.

    
por panticz.de 05.01.2018 / 11:02