欢迎光临
我们一直在努力

Linux 各发行版软件源一键切换方案

Linux 各发行版软件源一键切换方案

基于开源项目 LinuxMirrors 整理

简介

在国内使用 Linux 时,软件源问题一直是让人头疼的痛点:官方源访问困难、速度慢,手动配置国内镜像源又需要到处搜索可用地址,还要考虑发行版类型(Ubuntu、CentOS、Fedora 等)和版本号(Ubuntu 22/24、CentOS 7/8 等)的匹配,各家镜像站的目录结构和仓库名称还不统一,网上搜到的教程往往过时无人维护。

直到发现 linuxmirrors.cn 这个开源项目,一切迎刃而解——一行命令搞定换源,无需再到处找资源,脚本还提供了丰富的镜像源选择和人性化交互。本文将全面介绍该项目的使用方法。

眼见为实

执行脚本

在这里插入图片描述

按需选择(我选择阿里云)

在这里插入图片描述

替换完成

在这里插入图片描述

一、支持的操作系统

该项目已适配 26+ 种 Linux 操作系统,覆盖绝大多数使用场景:

操作系统适配版本
Debian 8~13
Ubuntu 14~25
Kali Linux all
Linux Mint 17~22 / LMDE 2~7
Deepin(深度) all
Zorin OS all
Armbian all
Proxmox VE all
Raspberry Pi OS all
Red Hat Enterprise Linux 7~10
Fedora 30~43
CentOS 7~8 / Stream 8~10
Rocky Linux 8~10
AlmaLinux 8~10
Oracle Linux 8~10
openEuler(开源欧拉) 20~25
OpenCloudOS(鸥栖) 8.6~9 / Stream 23
openKylin(开放麒麟) all
Anolis OS(龙蜥) 8 / 23
openSUSE Leap 15~16 / Tumbleweed
Arch Linux all
Manjaro all
EndeavourOS all
Alpine Linux v3 / edge
Gentoo all
NixOS 19~25

二、一键换源

2.1 基本用法

切换到 root 用户后,执行一行命令即可:

bash <(curl -sSL https://linuxmirrors.cn/main.sh)

脚本通过方向键交互引导你选择镜像源配置,全程无需手动编辑任何文件。

2.2 不同网络环境

脚本针对三种网络环境提供了对应的命令:

中国大陆(默认)

bash <(curl -sSL https://linuxmirrors.cn/main.sh)

境外及海外地区

bash <(curl -sSL https://linuxmirrors.cn/main.sh) –abroad

中国大陆教育网

bash <(curl -sSL https://linuxmirrors.cn/main.sh) –edu

2.3 多个脚本下载渠道

如果官网地址无法访问,可以通过以下备用渠道获取脚本:

渠道命令说明
官网(推荐) bash <(curl -sSL https://linuxmirrors.cn/main.sh) 全球边缘网络加速
GitHub bash <(curl -sSL https://raw.githubusercontent.com/SuperManito/LinuxMirrors/main/ChangeMirrors.sh) 原始仓库
Gitee bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh) 国内推荐,实时同步
GitCode bash <(curl -sSL https://raw.gitcode.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh) 同步有 1 小时延迟
jsDelivr bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/ChangeMirrors.sh) CDN 加速

2.4 镜像源选择建议

脚本内置了丰富的镜像源列表,如果你不确定选哪个,官方给出的建议是:

  • 阿里云 —— 兼容性高、可用性强
  • 中国科学技术大学 —— 速度快

不要陷入测速焦虑,内置的软件源一般不会有太大差异。

三、使用前提

3.1 需要 ROOT 权限

使用 root 账户运行,切换方式:

sudo -i
# 或
su root

注意:不要通过 sudo bash <(xxx) 的方式运行,要先切换到 root 用户再执行。

3.2 安装 curl

部分系统未预装 curl,会报 Command not found,按系统安装:

Debian 系 / Ubuntu / Kali / Linux Mint / Deepin 等

apt-get install -y curl

RedHat 系 / CentOS / Rocky / AlmaLinux / Fedora / openEuler 等

dnf install -y curl || yum install -y curl

openSUSE

zypper install curl

Arch Linux / Manjaro

pacman -S curl

Alpine Linux

apk –no-cache add -f curl bash ncurses

Gentoo

emerge –ask curl

NixOS

nix-env -iA nixos.curl

3.3 curl 装不上怎么办?

如果原有软件源已损坏导致安装不了 curl,可以用 Python 下载脚本:

python3 -c "import urllib.request; urllib.request.urlretrieve('https://linuxmirrors.cn/main.sh', 'main.sh')"
bash main.sh

或者直接在浏览器中打开 https://linuxmirrors.cn/main.sh 下载脚本文件,再通过 bash main.sh 执行。

四、备份与还原

4.1 自动备份

脚本默认自动备份原有软件源配置文件,备份路径为原文件加 .bak 后缀:

/etc/apt/sources.list => /etc/apt/sources.list.bak

4.2 手动还原

Debian 系

cp -rf /etc/apt/sources.list.bak /etc/apt/sources.list
apt-get update

RedHat 系

cp -rf /etc/yum.repos.d.bak /etc/yum.repos.d
yum makecache

openSUSE

cp -rf /etc/zypp/repos.d.bak /etc/zypp/repos.d
zypper ref

Arch Linux / Manjaro

cp -rf /etc/pacman.d/mirrorlist.bak /etc/pacman.d/mirrorlist
pacman -Sy

Alpine Linux

cp -rf /etc/apk/repositories.bak /etc/apk/repositories
apk update -f

五、高级用法

5.1 指定软件源地址

直接指定镜像站地址,跳过交互选择:

bash <(curl -sSL https://linuxmirrors.cn/main.sh) –source mirrors.aliyun.com

5.2 指定软件源仓库目录

当镜像站的仓库名称与默认规则不匹配时,可以通过 –branch 指定:

# 阿里云的 Rocky Linux 仓库目录名称为 rockylinux,而非默认的 rocky
bash <(curl -sSL https://linuxmirrors.cn/main.sh) \\
–source mirrors.aliyun.com \\
–branch rockylinux

5.3 单独更换 EPEL 源

EPEL(Extra Packages for Enterprise Linux)是 Fedora 维护的附加软件包仓库,适用于红帽系发行版。如果首次运行时未安装 EPEL,可以单独更换:

bash <(curl -sSL https://linuxmirrors.cn/main.sh) –only-epel

5.4 恢复官方源

误删了官方源备份时,可以一键恢复:

bash <(curl -sSL https://linuxmirrors.cn/main.sh) –use-official-source true

5.5 更换 Ubuntu EOL 版本软件源

Ubuntu 非 LTS 版本生命周期结束后,官方会移除对应仓库目录,需要使用 Ubuntu Old Releases 仓库:

bash <(curl -sSL https://linuxmirrors.cn/main.sh) \\
–source mirrors.ustc.edu.cn \\
–branch ubuntu-old-releases

5.6 指定 Debian 版本代号

可以用来切换 Debian 的版本分支,例如升级到测试版 trixie:

bash <(curl -sSL https://linuxmirrors.cn/main.sh) \\
–codename trixie \\
–upgrade-software false

5.7 指定 Debian Security 源

对安全性要求高的场景,建议 Security 源使用官方地址(镜像同步存在延迟):

bash <(curl -sSL https://linuxmirrors.cn/main.sh) \\
–source-security security.debian.org \\
–branch-security debian-security

六、无人值守自动化

适用于 CI/CD 集成和批量运维场景,通过命令选项实现无交互换源:

bash <(curl -sSL https://linuxmirrors.cn/main.sh) \\
–source mirror.example.com \\
–protocol http \\
–use-intranet-source false \\
–install-epel true \\
–backup true \\
–upgrade-software false \\
–clean-cache false \\
–ignore-backup-tips

七、常用命令选项速查

选项含义值
–abroad 使用境外软件源
–edu 使用教育网软件源
–source 指定软件源地址 域名或 IP
–source-epel 指定 EPEL 源地址 域名或 IP
–branch 指定软件源仓库路径 仓库名
–codename 指定版本代号 代号名称
–protocol 指定 Web 协议 http 或 https
–use-official-source 使用官方源 true / false
–install-epel 安装 EPEL true / false
–only-epel 仅更换 EPEL 源
–backup 备份原有软件源 true / false
–upgrade-software 更新软件包 true / false
–clean-cache 清理下载缓存 true / false
–lang 指定输出语言 语言 ID
–pure-mode 纯净模式
–print-diff 打印修改差异
–help 查看帮助

语言支持

脚本支持三种显示语言:

语言值
简体中文(默认) zh-hans / zh-cn / zh
繁體中文 zh-hant / zh-tw / zh-hk
English en / en-us

# 使用英文
bash <(curl -sSL https://linuxmirrors.cn/main.sh) –en

# 交互选择语言
bash <(curl -sSL https://linuxmirrors.cn/main.sh) –lang auto

八、精简版 Lite

面向企业产品和开源项目,具有以下特性:

  • 单一显示语言(English),无国际化功能
  • 默认使用官方源,去除交互选择
  • 去除无关打印内容
  • 保留核心逻辑与命令选项

bash <(curl -sSL https://linuxmirrors.cn/main-lite.sh)

总结

linuxmirrors.cn 这个项目完美解决了 Linux 换源的各种痛点:

  • 一行命令搞定 —— 无需手动编辑配置文件,零技术门槛
  • 覆盖面广 —— 26+ 种操作系统,各种版本精准识别
  • 镜像源丰富 —— 国内主流、教育网、海外源全都有
  • 安全可靠 —— 自动备份原有配置,支持一键还原
  • 高度可定制 —— 丰富的命令选项,支持自动化运维
  • 完全开源 —— MIT 协议,代码透明可审计
  • 以后装完 Linux 系统,再也不用到处找换源教程了,一行命令全搞定。

    赞(0)
    未经允许不得转载:171主机测评 » Linux 各发行版软件源一键切换方案
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址