常用换源及验证
整理 Ubuntu、CentOS、pip、npm、Docker、Go、Maven 等常用软件的国内镜像源配置方法和验证步骤。
2026-07-2312 分钟约 6 千字
前言
国内访问默认软件源速度慢,换源是装完系统的第一步。本文整理常用系统的换源方法和验证方式。
一、Ubuntu / Debian 换源
Ubuntu 24.04(DEB822 格式)
Ubuntu 24.04 开始使用新格式 .sources 文件,替换原来的 sources.list:
bash
# 备份原有源
cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.bak
# 替换为阿里云源
cat > /etc/apt/sources.list.d/ubuntu.sources << 'EOF'
Types: deb
URIs: https://mirrors.aliyun.com/ubuntu/
Suites: noble noble-updates noble-backports
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
Types: deb
URIs: https://mirrors.aliyun.com/ubuntu/
Suites: noble-security
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
EOF
# 更新索引
apt update
验证:apt update 输出中应显示 mirrors.aliyun.com。
Ubuntu 22.04 及以下(传统格式)
bash
cp /etc/apt/sources.list /etc/apt/sources.list.bak
sed -i 's|http://archive.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list
sed -i 's|http://security.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list
apt update && apt upgrade -y
Debian 12
bash
cp /etc/apt/sources.list /etc/apt/sources.list.bak
cat > /etc/apt/sources.list << 'EOF'
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
EOF
apt update
二、CentOS / Rocky Linux / AlmaLinux 换源
CentOS 7(已 EOL)
需要切换到 vault 源:
bash
sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-Base.repo
sed -i 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.aliyun.com|g' /etc/yum.repos.d/CentOS-Base.repo
sed -i 's|/centos/|/centos-vault/|g' /etc/yum.repos.d/CentOS-Base.repo
yum makecache
Rocky Linux 9 / AlmaLinux 9
bash
# 替换为阿里云镜像
sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux/$contentdir|g' \
-i /etc/yum.repos.d/rocky*.repo
dnf makecache
验证:
bash
dnf repolist
三、pip 换源
临时使用
bash
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名
永久配置
Linux:
bash
mkdir -p ~/.config/pip
cat > ~/.config/pip/pip.conf << 'EOF'
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
EOF
验证:
bash
pip config list
pip install requests # 观察下载速度
四、npm / yarn / pnpm 换源
npm
bash
npm config set registry https://registry.npmmirror.com
npm config get registry
yarn
bash
yarn config set registry https://registry.npmmirror.com
yarn config get registry
pnpm
bash
pnpm config set registry https://registry.npmmirror.com
pnpm config get registry
五、Docker 换源
bash
mkdir -p /etc/docker
cat > /etc/docker/daemon.json << 'EOF'
{
"registry-mirrors": [
"https://your-id.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"
]
}
EOF
systemctl restart docker
验证:
bash
docker info | grep -A 5 "Registry Mirrors"
六、Go 换源
bash
go env -w GOPROXY=https://goproxy.cn,direct
go env -w GOSUMDB=sum.golang.google.cn
go env GOPROXY
七、Maven 换源
~/.m2/settings.xml:
xml
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
验证:执行 mvn help:effective-settings 或查看下载日志中的仓库地址。
八、其他常用换源
Homebrew(macOS)
bash
# 替换 brew.git
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
# 替换 homebrew-core.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
# 替换 bottles 源
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bashrc
Conda
~/.condarc:
yaml
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
验证:conda config --show channels
Cargo(Rust)
~/.cargo/config.toml:
toml
[source.crates-io]
replace-with = "rs"
[source.rs]
registry = "sparse+https://rsproxy.cn/index/"
总结
换源看似简单,但版本和格式经常变化。建议换源后务必执行 apt update / dnf makecache 验证,遇到 404 多半是版本路径不对。
换源镜像站系统配置
欢迎讨论
有想法或问题?欢迎通过联系方式与我交流