tex-historic-archive安装加速
参考资料
tex-historic-archive安装加速
tex-historic-archive 安装加速:思路与实操
`tex-historic-archive` 属于体量较大的 TeX 历史归档类资源,安装过程通常包含「下载 → 校验 → 解包 → 注册」几个阶段。真正拖慢安装的往往不是解包或注册,而是远程下载这一环。因此加速的核心,是围绕下载链路做优化,同时减少重复劳动。下面按可执行的顺序展开。
---
一、先定位瓶颈
在动手优化前,先确认时间花在哪里: bash
粗略计时各个阶段
time wget -c <归档地址> -O archive.tar.xz time xz -T0 -dc archive.tar.xz | tar -xf - 判断原则:
| 现象 | 主要瓶颈 | 优化方向 |
|---|---|---|
| 下载速率长期远低于带宽 | 源站限速 / 跨境链路 | 换镜像、走代理 |
| 单线程速度尚可但总时长长 | 未并行 | 多线程下载 |
| 同一文件反复下载 | 无缓存 | 本地缓存 / 断点续传 |
| 校验与解包耗时明显 | CPU / 单线程 xz | 多核解压 |
---
二、选择就近镜像
TeX 相关资源在 CTAN 有大量镜像节点。选择物理距离近、响应快的镜像,通常能带来最直接的提速。
- 优先使用所在地区或邻近地区的镜像节点;
- 用 `curl -o /dev/null -s -w '%{time_total}\n' <镜像地址>` 简单比对各镜像的响应时间,挑最快的使用;
- 若使用 `tlmgr`,可通过仓库地址切换到选定镜像:
bash tlmgr option repository <镜像地址> tlmgr update --self 镜像选择的原则是稳定优先、就近次之——偶尔某个就近节点反而更慢,需要实测。
---
三、并行与断点续传下载
单连接下载容易受单个 TCP 连接吞吐限制。使用支持多连接的工具能明显改善: bash
aria2 多连接下载
aria2c -x 8 -s 8 -k 1M -c <归档地址>
axel 多连接
axel -n 8 -a <归档地址>
wget 断点续传(链路不稳定时)
wget -c <归档地址> 建议:
- `-x/-n`(连接数)不必开得过大,一般 4~8 即可,过多反而触发对端限速;
- 始终带上续传参数(aria2 的 `-c`、wget 的 `-c`),避免中断后从零开始;
- 下载大文件时配合 `screen`/`tmux`,防止终端断开导致任务丢失。
---
四、代理与网络层优化
如果源站位于跨境链路,代理往往是决定性的: bash export https_proxy="http://<proxy-host>:<port>" export http_proxy="http://<proxy-host>:<port>" export no_proxy="localhost,127.0.0.1" 注意事项:
- 代理地址中的用户名密码需要 URL 编码;
- 只为必要的域名走代理(用 `no_proxy` 或 `git config` 的按域名设置),避免内网请求被绕行;
- 若下载工具的代理支持不如系统级完善,优先用环境变量方式统一配置。
---
五、缓存与避免重复工作
安装脚本重复执行时,最容易被忽视的浪费是「已经下过的又下一次」。
- 保留已下载的归档包,校验通过后不要删除,重装时直接复用;
- 用 `--keep` 之类参数保留中间产物(视具体安装方式而定);
- 对需要反复拉取的目录,考虑 `rsync` 增量同步,只传变化部分:
bash rsync -avz --partial --progress <源> <目标>
- 若
时间:2026-10-07
来源:https://mirror.ciilii.com/
