openSUSE 的镜像大脑(MirrorBrain)似乎还是很慢,各位都是怎么解决镜像速度的问题?

目前在用 openSUSE Tumbleweed ,别的都好,就是每次用 zypper 升级或安装软件包的时候实在太慢了,相比我之前在别的发行版使用打包工具的经历(pacman、apt、dnf 等),zypper 的响应速度要慢的多。中间尝试过把镜像源换成清华和中科大,速度稍微提升了一些,不过每次运行 zypper 更新或安装的时候,还是要经历一个漫长的仓库元数据刷新过程。

今天遇到中科大镜像元数据缺失报错,于是暂时换回了默认仓库地址,结果在使用 zypper dup 升级的时候,还是遇到下载卡住的问题,目前正卡在一个软件包的下载过程,只有几 KiB 到几十 KiB 每秒,进度条几乎没动。

我尝试搜索其他人的解决办法,多数都是推荐用默认镜像,说是 MirrorBrain 会自动选择最近的 CDN ,可是为什么实际体验这么差呢?MirrorBrain 真的起作用吗?


更新:

最后没办法,使用科学上网工具开启了 TUN 模式,瞬间速度起来了。

这就涉及到另外一个问题,明明我的终端环境已经配置了代理变量(HTTP_PROXY 和 http_proxy 等),但是 zypper 却并没有走代理,除非是开启了系统级别的 TUN 模式它才会走代理,这又是什么逻辑?而且我看了一下 /etc/zypp/zypper.conf,也没看到 proxy 相关说明,所以 zypper 使用代理也这么麻烦吗?

我也遇到了这个问题,但我的也可能是 zypper 自己的问题,–no-refresh 参数执行 zypper se 也非常慢 :melting_face:,而且一样它也不吃正常的代理。

明明我的终端环境已经配置了代理变量(HTTP_PROXY 和 http_proxy 等),但是 zypper 却并没有走代理

会不会是 sudo 没有保留你的环境变量,你应该在 sudo 后设置环境变量。我猜的

1赞

似乎真和这个有关,我忘了 sudo 会隔离环境变量,下次更新的时候使用 sudo -E zypper dup 试试。

没用的,zypper 还是会直接访问 openSUSE 的 cdn

我这边还好,也有可能是地区网络差异的缘故吧。