最有效方式是直接更换国内镜像源;需先确认系统类型(cat /etc/os-release)和包管理器(which apt/yum/dnf),再按发行版匹配对应源地址,备份原配置后替换,并执行update/makecache刷新缓存。

yum 或 apt 下载速度最有效、最稳妥的方式。其他优化(如调并发、启插件)效果有限,且可能引入兼容性问题;而源没换对,后面所有操作都是白忙。
怎么确认当前系统和包管理器类型
不看清楚系统就动手换源,90%会出错——比如把 Ubuntu 的 sources.list 改成 CentOS 的 repo 地址,apt update 直接报签名错误或 404。
- 查发行版:
cat /etc/os-release,重点关注ID和VERSION_ID字段(如ID=ubuntu+VERSION_ID="22.04") - 查包管理器:
which apt或which yum或which dnf,RHEL 8+/CentOS 8+ 默认用dnf,但yum命令仍可兼容调用 - 查源配置位置:
- Ubuntu/Debian:源文件在
/etc/apt/sources.list,第三方 PPA 在/etc/apt/sources.list.d/ - CentOS/RHEL/Rocky/AlmaLinux:主配置在
/etc/yum.repos.d/下的.repo文件
- Ubuntu/Debian:源文件在
Ubuntu/Debian 怎么安全替换 apt 源
别用 sed 粗暴全局替换域名,http://archive.ubuntu.com 和 http://security.ubuntu.com 路径结构不同,硬替容易漏掉 -security 或 -updates 子路径,导致安全更新失效。
- 先备份:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak - 用编辑器清空并重写完整条目,例如 Ubuntu 22.04(代号
jammy)用清华源:deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
- 注意:
deb-src行可选,仅当你需要编译源码时才启用;若不确定,先不加 - 改完执行:
sudo apt update,观察是否出现Hit或Get开头的行,且无Failed to fetch报错
CentOS/RHEL 系如何换 yum/dnf 源
直接下载官方维护的 repo 文件最省心,比手动写 .repo 内容少出错。清华、中科大、阿里都提供按版本生成的标准化配置,GPG 密钥路径、元数据地址全对齐。
- 备份原有配置:
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak - 根据系统版本拉取对应 repo(以 CentOS 7 为例):
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.tuna.tsinghua.edu.cn/repo/CentOS-7.repo
- 如果是 Rocky Linux 9,地址应为:
https://mirrors.tuna.tsinghua.edu.cn/rocky/9/BaseOS/x86_64/os/对应的官方 repo 模板,不能套用 CentOS 的链接 - 执行:
sudo yum clean all && sudo yum makecache(CentOS 7/8)或sudo dnf clean all && sudo dnf makecache(RHEL 8+) - 验证:
yum repolist或dnf repolist应显示仓库状态为enabled,且数量与原系统一致
换源后为什么还是慢?几个关键盲点
换完源跑 apt update 显示很快,但装软件时又卡住,大概率是下面这些地方没同步处理:
- 第三方 PPA 源(Ubuntu)或 EPEL(CentOS)没换:它们仍走海外服务器,
apt install或yum install会卡在某个 PPA 包上;解决方法是禁用或手动替换其 URL(如 Launchpad 上的 PPA 通常没有国内镜像,建议优先用官方源替代) -
yum-plugin-fastestmirror在某些内网或代理环境下反而拖慢速度,测试发现它频繁测速失败时会反复重试;可临时关掉:sudo sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf - 缓存没清干净:
yum clean all不会删/var/cache/yum下的旧元数据压缩包,遇到版本升级(如 CentOS 7 → 8)必须手动rm -rf /var/cache/yum - IPv6 未关闭:部分镜像站 IPv6 解析慢或不可达,可在
/etc/sysctl.conf加net.ipv6.conf.all.disable_ipv6 = 1后sudo sysctl -p
install。










