Tengo un Ubuntu 12.04 virtual box vm que ejemplifico usando Vagrant.
git clone https://github.com/spuder/puppet-gitlab
vagrant up
Tan pronto como se ejecuta el cuadro vagabundo apt-get update
, aparece el siguiente error.
...
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
Cosas que he intentado solucionar este error.
- Usé 3 cajas ubuntu 12.04 diferentes de ' http://www.vagrantbox.es '
solución sugerida aquí :
sudo rm -rf / var / lib / apt / lists / *
sudo apt-get update
sudo apt-get cleanSe eliminaron y volvieron a leer los paquetes de laboratorios de marionetas
También probé sugerencias similares que encontré en las primeras páginas de google. Incluso probé varias computadoras y varias conexiones a Internet.
El hecho de que esto haya afectado múltiples ubm vm's en múltiples conexiones de internet me hace pensar que hay algo mal con el repositorio de ubuntu.
¿De qué otra forma puedo intentar solucionar este problema?
Actualizar
Intenté limpiar '/ var / lib / apt / lists / partial' y ejecutar apt-get clean, luego reemplacé las fuentes en / etc / sources / list usando los espejos amazon sugeridos aquí:
Todavía recibo un error similar
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.
Actualización2
Tengo 2 conexiones a internet en casa, ambas dieron el mismo error. Tan pronto como llevé mi computadora portátil a la conexión a Internet de mi trabajo, el problema desapareció.
Todavía tengo curiosidad por entender por qué mi conexión a Internet haría alguna diferencia.
Actualización3
Vea mi respuesta a continuación para obtener una explicación. Mi filtro de internet estaba corrompiendo la descarga.
Reformularé la pregunta ya que todavía no hay respuestas.
¿Hay alguna forma de anular las discrepancias de Hash Sum en apt-get?
Respuestas:
Primero, debe comprender por qué se producen errores de discrepancia de suma hash. En general, hay 2 razones:
En primer lugar, algunos repositorios apt usan metadatos comprimidos LZMA (.xz). apt antes de la versión 1.0 no puede descomprimir los archivos LZMA correctamente (a veces) dando el error de falta de coincidencia de suma hash.
Hay dos soluciones para esto:
Echa un vistazo a esta publicación de blog que escribí sobre este tema que explica ambas soluciones con mayor detalle.
En segundo lugar, los repositorios APT son intrínsecamente picantes . Los metadatos APT reales tienen errores y su diseño hace que sea imposible que los clientes aptos descarguen los metadatos del repositorio de manera consistente si esto
apt-get update
sucede mientras se actualiza el repositorio.Hay dos soluciones para esto:
apt-get clean
seguido derm -rf /var/lib/apt/lists/*
. A continuación, correapt-get update
. Esto volverá a descargar todos los metadatos. Si el repositorio al que intenta conectarse no se actualiza mientras está en ejecuciónapt-get update
, estará bien. De lo contrario, tendrá que hacer esto nuevamente.fuente
Lo averigué.
Mis dos computadoras son idénticas en todos los sentidos, excepto que en mi computadora personal instalé un filtro de Internet.
El filtro de internet k9 instaló una extensión de kernel que aparentemente se mete con el tráfico.
Tan pronto como desinstalé el filtro, el problema desapareció.
Todavía estoy investigando si hay alguna forma de
apt-get update
ignorar los desajustes de suma de hash como una solución alternativa.fuente