由于哈希总和不匹配,sudo apt-get 更新失败

jss*_*367 17 updates apt

当我运行时,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
Run Code Online (Sandbox Code Playgroud)

我试着用

sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update 
Run Code Online (Sandbox Code Playgroud)

但这没有用,也没有用

sudo apt-get clean
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

或者

sudo apt-get dist-upgrade
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

我还有其他方法可以尝试解决这个问题吗?

vah*_*dan 28

在终端1 中运行这些命令:

sudo apt-get clean

sudo rm -r /var/lib/apt/lists/*
Run Code Online (Sandbox Code Playgroud)

那对我有用。:-)

参考

  • 那行得通!为了避免删除lists文件夹,最好执行`sudo rm -r /var/lib/apt/lists/*` (3认同)

emk*_*203 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会选择法国服务器,从美国服务器开始。

如果您像第一行那样切换到主服务器,请注意,简单地交换搜索和替换术语以恢复美国镜像会破坏您的安全性和附加存储库(如果您使用它们)。您需要运行第二sudo sed -i 's|http://us.security|http://security|g' /etc/apt/sources.list行来解决这个问题,重复执行额外功能而不是安全性。


小智 0

手动下载出现哈希总和不匹配错误的软件包并将其复制到

/var/cache/apt/archive
Run Code Online (Sandbox Code Playgroud)

然后再次运行

apt-get install <package-name>
Run Code Online (Sandbox Code Playgroud)

现在应该可以正确运行了。


归档时间:

查看次数:

48449 次

最近记录:

8 年,6 月 前