2020-02-18 | 研究与探索 | UNLOCK

apt 下载加速

这几天把系统升级到了 Linux Mint 19.3,其实说是重装更合适,用新版系统的安装镜像覆盖安装了原系统顺便重新分了区,而不是像 Arc Linux 和 Gentoo 那样德滚动更新。我不想格式化我的 U 盘,所以我还研究了怎么用 grub 挂载硬盘上的 ISO 文件启动。

更新系统后似乎运行速度快了不少。更新的最大好处是可以蹭 Ubuntu 18.04 的包,之前 Linux Mint 18 是基于 Ubuntu 16.04 的,很多包都过时了。/home 目录直接用备份复原,而软件需要用 apt 安装。

由于各种原因(包括 GFW 和辣鸡电信宽带),我直接安装软件的话速度是 1KiB/s 以下乃至断线,实在不可接受。我搜集和研究了一些解决办法。

使用国内镜像

这个问题的大头可以通过设置官方仓库镜像来解决,但有些软件是通过 PPA 或独立仓库来安装的,它们就无法通过镜像来加速了。

使用 UTSC PPA 代理

launchpad.net 在大陆访问好像很慢,可以通过 UTSC 的代理地址来加速,具体方法就是把 PPA 地址里的 launchpad.net 都改为 launchpad.proxy.utsclug.org。这样操作会让“软件源”中相应条目从“PPA”转到“额外的仓库”里,但不影响使用。

使用其它代理

而像 Sublime Text 和 Mono 这样不在 launchpad 上而是自己搭建仓库的,如果找不到镜像,只能想办法开代理。在这里我耗费了大量时间研究和看教程,因为我开了 SSR 下载还是龟速,最后发现我的 apt 完全不受 http_proxyhttps_proxy 环境变量影响,不论大小写,只有改配置文件才能成功设置代理。具体方法是在 /etc/apt/apt.conf.d/01proxy 里写入:

1
Acquire::http::Proxy "http://$PROXY_IP:$PORT";

$PROXY_IP 换成 HTTP 代理服务器的 IP,把 $PORT 换成代理服务的端口。如果只需要某个仓库通过代理下载,比如 download.sublimetext.com 可以这么配置:

1
Acquire::http::Proxy::download.sublimetext.com "http://$PROXY_IP:$PORT";

关于 http 代理,如果你使用 SSR,那么打开它的“http代理”功能,然后在以上 apt 配置中填入 "http://127.0.0.1:$PORT" 即可,$PORT 默认为 1080。

另外,M$ 的 .NET Core 仓库挺快的,不用加速。