一键脚本解决 CentOS 7 YUM 源问题:轻松配置高效镜像源

559 阅读3分钟

一键脚本解决 CentOS 7 YUM 源问题:轻松配置高效镜像源

在使用 CentOS 7 系统时,许多用户可能会遇到 YUM 源访问速度慢或无法连接的问题。这通常是由于默认的 YUM 源服务器距离较远或网络不稳定导致的。为了解决这一问题,我们可以使用一个自定义的 Bash 脚本,一键切换到国内高速镜像源,提升软件包的下载和更新速度。本文将详细介绍如何使用该脚本解决 CentOS 7 的 YUM 源问题。

脚本功能概述

该脚本的主要功能包括:

  1. 自动检测网络连接:检查多个镜像源的可用性,确保选择的镜像源可以正常访问。
  2. 支持多种镜像源:包括阿里云、腾讯云、华为云等国内主流镜像源,以及官方源作为备用。
  3. 用户选择:提供交互式菜单,用户可以根据检测结果选择最适合的镜像源。
  4. 自动配置 YUM 源:根据用户选择,自动更新 /etc/yum.repos.d/ 下的配置文件。
  5. 支持 Docker 配置:如果需要安装或更新 Docker,脚本会自动配置 Docker 的镜像源。

脚本使用方法

1. 下载脚本

首先,将脚本保存为 yum-mirror-switcher.sh,并确保其具有可执行权限。(下载见文末)

wget https://example.com/yum-mirror-switcher.sh
chmod +x yum-mirror-switcher.sh

2. 运行脚本

以 Root 用户身份运行脚本:

sudo ./yum-mirror-switcher.sh

3. 选择镜像源

脚本会自动检测所有可用的镜像源,并显示检测结果。用户可以根据提示选择一个可用的镜像源。

=== 可用 Docker CE 镜像源 ===
 1. 阿里云@mirrors.aliyun.com/docker-ce [✓]
 2. 腾讯云@mirrors.tencent.com/docker-ce [✓]
 3. 华为云@repo.huaweicloud.com/docker-ce [✗]
 ...
请选择 Docker CE 镜像源 (1-10):

类似地,用户还需要选择一个 Docker Registry 镜像源。

微信截图_20250206161341.png

4. 自动配置

脚本会根据用户的选择,自动更新 YUM 源配置文件,并安装或更新 Docker(如果需要)。

脚本原理详解

1. 镜像源检测

脚本通过 curl 命令检查每个镜像源的可用性。例如:

curl -sI --connect-timeout 5 "https://$address/${CHECK_FILE}" | grep -q "200 OK"

如果返回状态码为 200 OK,则表示该镜像源可用。

2. 配置文件更新

根据用户选择的镜像源,脚本会自动更新 /etc/yum.repos.d/docker-ce.repo/etc/apt/sources.list.d/docker-ce.list 文件。例如:

sudo sed -i.bak -e "s|baseurl=.*docker-ce|baseurl=https://$SELECTED_SOURCE|" /etc/yum.repos.d/docker-ce.repo

3. Docker 配置

脚本还会配置 Docker 的镜像加速器,通过更新 /etc/docker/daemon.json 文件:

{
  "registry-mirrors": ["https://$SELECTED_REGISTRY"]
}

注意事项

  1. 权限问题:脚本需要以 Root 用户身份运行,否则可能会因权限不足而失败。
  2. 网络环境:如果网络环境较差,建议优先选择国内镜像源。
  3. 依赖安装:脚本会自动安装必要的依赖(如 yum-utilscurl 等),但需要确保系统支持。

总结

通过使用该脚本,我们可以轻松解决 CentOS 7 的 YUM 源问题,并提升系统的软件包管理效率。无论是日常使用还是服务器维护,该脚本都能为我们节省大量时间。如果你在使用过程中遇到任何问题,欢迎在评论区留言,我会尽力解答。

希望这篇博客对你有所帮助!

脚本下载: github.com/pluswait/yu…