Ubuntu使用apt-get update命令時提示Hash Sum mismatch錯誤的解決方案
阿新 • • 發佈:2019-02-04
新安裝的Ubuntu 14.04 LTS,進行sudo apt-get update
命令更新源的時候總是提示Hash Sum mismatch錯誤,再網上找了很多辦法。
有的辦法,有時候有用,有時候不起作用。先說說,網上常見的辦法,最後說說一勞永逸的解決方案。
方案一:更換軟體下載的源,可以通過System Settings的Software & Updates進行源設定。
方案二:
使用如下命令:
sudo apt-get clean
sudo rm -rf /var/lib/apt/lists/*
sudo apt-get update
方案三:
使用如下命令:
sudo apt-get clean
sudo apt-get update --fix-missing
對於方案二,我試了一下,起作用了,但是後來有不起作用了。
最後,在一篇國外的部落格上找到了最終的解決方案。先上地址:Fixing APT Hash Sum Mismatch: Consistent APT Repositories
簡單說來就是:使用apt命令的時候附加引數-o Acquire-by-hash=yes
但是這個命令是在apt 1.2.10以及更高版本進行支援的(Ubuntu 16.04支援這個命令),而Ubuntu 14.04自帶的apt版本較低,所以需要安裝新版本的apt工具。
安裝新版本的命令如下:
curl -s https://packagecloud.io/install/repositories/computology/apt-backport/script.deb.sh | sudo bash
sudo apt-get install apt=1.2.10
如果還有使用12.04的童鞋,可以參考博文:
APT 1.2.10 backport for Ubuntu Trusty (14.04) and Ubuntu Precise (12.04)
以後使用
sudo apt-get update -o Acquire-by-hash=yes
命令進行軟體源的更新,就不太可能出現Hash Sum mismatch的錯誤了! 如果還是有錯誤,可以試試加上
-o Acquire::https::No-Cache=True -o Acquire::http::No-Cache=True
這兩個引數請求apt伺服器的非快取檔案。