今天 ubuntu 更新老是显示 Hash 校验和不符

2016-01-07 16:35:14 +08:00
 mikicomo

W: 无法下载 http://ubuntu.cn99.com/ubuntu/dists/wily-updates/main/i18n/Translation-en Hash 校验和不符
W: 无法下载 http://ubuntu.cn99.com/ubuntu/dists/wily-updates/universe/i18n/Translation-en Hash 校验和不符
W: 无法下载 http://ubuntu.cn99.com/ubuntu/dists/wily-security/main/i18n/Translation-en Hash 校验和不符
W: 无法下载 http://ubuntu.cn99.com/ubuntu/dists/wily-security/universe/i18n/Translation-en Hash 校验和不符

E: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。

换了很多源都是这样, google 的方法也不管用,请 V 友们帮忙看看啊

6700 次点击
所在节点    问与答
17 条回复
tonghuashuai
2016-01-07 17:31:31 +08:00
翻墙访问吧
mikicomo
2016-01-07 17:32:42 +08:00
@tonghuashuai 是功夫网的原因吗?另外麻烦看下我另一个帖子 https://www.v2ex.com/t/249017#reply0
tonghuashuai
2016-01-07 17:48:33 +08:00
@mikicomo 你用的是什么宽带?
应该是运营商缓存引起的
我一般翻个墙再访问会好(不是绝对的)
bmy001
2016-01-07 18:06:02 +08:00
用 apt- fast 把,这个是运营商缓存的锅,或是吧 apt 的包换成 gz 格式
angryRabbit
2016-01-07 18:36:25 +08:00
我来讲一下原理。
apt-get update 会下载 ubuntu/dists/trusty/Release 其中记录了 MD5SUM 。
然后下载 Package.gz
如果楼主用的是长城宽带(鹏博士貌似就是长宽),长宽会有非常 sb 的缓存。自动 302(Temporarily Moved)重定向。见图。


然后下载后校验发现 md5 不匹配( apt 说:丫的,这就是中间人攻击呀,不能告诉小白用户),提示
E: Some index files failed to download. They have been ignored, or old ones used instead.

但是我说的情况和楼主的情况不太一致,我说的是 apt-get update 时的错误,楼主貌似是 apt-install 时的错误,其实逻辑是一样的,下载的文件跟 package.gz 中的 md5 不一致。

解决方法:
试试自动选择 mirror 。
http://askubuntu.com/questions/37753/how-can-i-get-apt-to-use-a-mirror-close-to-me-or-choose-a-faster-mirror
一开始我用的是 163 的源,会 302 ,改成 cn99 就没有 302 了。

别的方法就是 vpn 、挂代理。
mikicomo
2016-01-07 18:54:30 +08:00
@tonghuashuai 上海电信
mikicomo
2016-01-07 18:56:39 +08:00
@angryRabbit 我是 update 的时候出的问题
zsj950618
2016-01-07 19:11:29 +08:00
首先,你得确定是不是因为运营商缓存。
这个很好确定,你手动用 wget --verbose 下载 http://ubuntu.cn99.com/ubuntu/dists/wily-updates/main/i18n/Translation-en
你可以看这个是不是会转跳,如果有转跳基本上被劫持无误。

如果是运营商缓存劫持,很好解决,把源换成 https 就好了。如 https://mirrors.ustc.edu.cn/ubuntu
mikicomo
2016-01-07 19:25:53 +08:00
@zsj950618 好的,我试试
angryRabbit
2016-01-07 19:33:01 +08:00
@zsj950618 亲,还有哪些源支持 https 了?
mikicomo
2016-01-07 19:39:53 +08:00
@mikicomo
@angryRabbit
ustc 成功了, cn99 , aliyun ,官方服务器均跪.........上海电信是不是要报警= =
zro
2016-01-07 19:50:25 +08:00
刚才跟楼主一样,幸好家里有 v6 ,然后在网络把 v4 给禁用了,然后世界就清净了。。。(前提是更新源要支持 v6 )
jarlyyn
2016-01-07 19:54:36 +08:00
cn99 和墙什么关系……

一直用 163 和 aliyun 的源,没遇到过这样的问题,上海电信。
jkeylu
2016-01-07 20:07:54 +08:00
运营商缓存
可以使用 aliyun 的源 http://mirrors.aliyun.com/ubuntu/
进入这个地址,你会发现这个目录下还有个 ubuntu 的软连接,它是指向当前目录的。
一般运营商只会根据 url 缓存,所以你只需在上面源的地址后面在跟个 ubuntu/ 就行了,或者任意多个
比如 http://mirrors.aliyun.com/ubuntu/ubuntu/
手机上码字好累,不知道我讲明白了没
qingyang
2016-01-07 20:14:01 +08:00
聽別人說用牆內源下載的套件有些也許和牆外源下載的有一點點不同噢
mikicomo
2016-01-07 20:23:46 +08:00
@jkeylu 多谢指点
zsj950618
2016-01-07 21:04:12 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/249075

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX