CentOS Stream 9 切换 yum 源到清华 TUNA 镜像
在 CentOS Stream 9 上,把默认的 metalink 注释掉,追加清华 TUNA 镜像的 baseurl,可以显著提升 dnf 速度(特别是在国内网络环境)。
一、源切换脚本
update_mirror.pl 是一个 perl 一行命令脚本,遍历给定的 .repo 文件,把 metalink= 注释掉,并按 name 段解析 repo 与 arch,自动拼接清华 TUNA 的 baseurl。
完整脚本
1 | |
二、使用方法
1 | |
三、脚本工作原理
对每个 .repo 文件:
- 备份为
<file>.bak - 把
metalink=注释成# metalink(保留原配置可回滚) - 解析每个
name=<repo>-<arch>段:repo段名(如BaseOS、AppStream、Extras)arch架构(如x86_64、aarch64、source)
- 追加清华 TUNA
baseurl:Extras走/SIGs/$releasever-stream/extras/.../extras-common- 其他走
/$releasever-stream/$repo/.../$arch/tree/
四、效果示例
切换前 /etc/yum.repos.d/CentOS-Stream-BaseOS.repo:1
2
3[baseos]
name=CentOS Stream $releasever - BaseOS
metalink=https://mirrors.centos.org/mirrorlist?arch=$basearch&repo=centos-stream-$releasever-baseos&...
切换后:1
2
3
4[baseos]
name=CentOS Stream $releasever - BaseOS
# metalink=https://mirrors.centos.org/mirrorlist?arch=$basearch&repo=centos-stream-$releasever-baseos&...
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-stream/$releasever-stream/BaseOS/$basearch/os/tree/
五、验证
1 | |
六、回滚
1 | |
七、其它镜像
如需切换到其他镜像,修改脚本顶部的 $mirrors 变量即可:
| 镜像 | URL |
|---|---|
| 清华 TUNA | https://mirrors.tuna.tsinghua.edu.cn/centos-stream |
| 中科大 USTC | https://mirrors.ustc.edu.cn/centos-stream |
| 阿里云 | https://mirrors.aliyun.com/centos-stream |
| 华为云 | https://mirrors.huaweicloud.com/centos-stream |
总结
- 脚本核心动作:注释 metalink + 追加 baseurl
- 适用于
BaseOS/AppStream/Extras/PowerTools/CRB等所有标准源 - 不适用于第三方仓库(如
docker-ce.repo、nvidia-container-toolkit.repo),它们有自己的镜像机制 - 备份即回滚,放心执行
CentOS Stream 9 切换 yum 源到清华 TUNA 镜像
https://zhazhajust.github.io/2026/06/10/centos-stream-mirror/