当我运行时,sudo apt-get update
我收到四个哈希总和不匹配错误:
W: Failed to fetch http://au.archive.ubuntu.com/ubuntu/dists/trusty-updates/main/binary-amd64/Packages Hash Sum mismatch
W: Failed to fetch http://au.archive.ubuntu.com/ubuntu/dists/trusty-updates/universe/binary-amd64/Packages Hash Sum mismatch
W: Failed to fetch http://au.archive.ubuntu.com/ubuntu/dists/trusty-updates/main/binary-i386/Packages Hash Sum mismatch
W: Failed to fetch http://au.archive.ubuntu.com/ubuntu/dists/trusty-updates/universe/binary-i386/Packages Hash Sum mismatch
我尝试用以下方法修复此问题
sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update
但那没有用,也没有
sudo apt-get clean
sudo apt-get update
或者
sudo apt-get dist-upgrade
sudo apt-get update
我可以尝试其他方法来解决此问题吗?
答案1
答案2
通常切换到另一个镜像就可以解决问题。在 GUI 中很容易,但我怀疑您需要 CLI 解决方案。
sudo sed -i 's|http://us.|http://|g' /etc/apt/sources.list
编辑您的 sources.list 以使用来自美国镜像的主服务器。您可以替换其他镜像,sudo sed -i 's|http://us.|http://fr.|g' /etc/apt/sources.list
选择法国服务器,从美国服务器开始。
如果您像第一行一样切换到主服务器,请注意,简单地交换搜索和替换术语以恢复美国镜像会破坏您的 security 和 extras 存储库(如果您使用它们)。您需要运行第二行sudo sed -i 's|http://us.security|http://security|g' /etc/apt/sources.list
来解决这个问题,重复执行 extras 而不是 security。
答案3
手动下载正在获取的软件包哈希值不匹配错误并将它们复制到
/var/cache/apt/archive
然后再次运行
apt-get install <package-name>
现在它应该可以正确运行了。