以前添加了 KDE 源,当时下载速度还能勉强达到 2MiB/s,结果今天更新死活只有几十 KiB/s,难道下载速度还要靠运气?后来查到官方源用了 MirrorBrain,理论上会分配到最近、最快的镜像,不过准确度不高?
于是我决定手动获取镜像信息,在里面选择比较快的。过程如下:
1、获取文件 HTTP 相应头信息:首先在目标软件源里找一个为文件(最好是比较大的),例如:
https://download.opensuse.org/repositories/KDE:/Qt:/5.14/openSUSE_Leap_15.1/x86_64/libopencv4_1-debuginfo-4.1.1-lp151.7.1.x86_64.rpm
然后用 curl 即可获取:curl -I url
找到像这样的信息:
link: <https://download.opensuse.org/repositories/KDE:/Qt:/5.14/openSUSE_Leap_15.1/x86_64/libopencv4_1-debuginfo-4.1.1-lp151.7.1.x86_64.rpm.meta4>; rel=describedby; type="application/metalink4+xml" link: <http://ftp.lysator.liu.se/pub/opensuse/repositories/KDE:/Qt:/5.14/openSUSE_Leap_15.1/x86_64/libopencv4_1-debuginfo-4.1.1-lp151.7.1.x86_64.rpm>; rel=duplicate; pri=1; geo=se link: <http://widehat.opensuse.org/repositories/KDE:/Qt:/5.14/openSUSE_Leap_15.1/x86_64/libopencv4_1-debuginfo-4.1.1-lp151.7.1.x86_64.rpm>; rel=duplicate; pri=2; geo=de
2、测速:然后从手动每个镜像下载,就能知道下载速度,例如:curl -o /dev/null url,当然,也可以对比下延迟
3、更换:用 zypper 或 yast 把相应的源地址进行替换即可(注意镜像源的路径可能不一样)。
不过如果所有源都很慢,那也没办法了。。。或许有什么工具可以简化上述操作?