搜索
发表于 2025-2-9 22:21:29 1156 浏览 31 回复 来自手机

[其他技术] Centos7更换软件源

bc3af21d-0910-45e6-9ddf-9f39a1af8e72.jpg
因为centos 7/8的官方都停止了,所以大多数软件源都已经停止了,目前阿里云还在继续支持,下面给一个脚本,一件切换你安装CentOS7服务器所在地线路最优的软件源
  1. curl -sSO https://download.bt.cn/install/Vault-Repo.sh;bash Vault-Repo.sh
复制代码

这个是宝塔官方提供的软件源

帖子出处: 宝塔官方发布
脚本内容:
  1. #!/bin/bash
  2. # 2024/7/8 下午9:59 centos7/8/8stream弃用版本更换软件源

  3. cp -r /etc/yum.repos.d /root/
  4. rm -rf /etc/yum.repos.d/*
  5. #cp -r /root/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/

  6. releasever=$(cat /etc/redhat-release | grep -E -ow [0-9].[0-9].[0-9]+)
  7. os_version=$(. /etc/os-release && echo $VERSION_ID)
  8. is_8stream=$(cat /etc/redhat-release | grep "8" | grep -i "Stream")
  9. if [ "$is_8stream" ]; then
  10.     releasever="8-stream"
  11.     os_version="8stream"
  12. fi

  13. YUM_REPOS=(
  14.     "http://mirrors.aliyun.com/centos-vault/$releasever"
  15.     "http://mirror.tuna.tsinghua.edu.cn/centos-vault/$releasever"
  16.     "http://mirrors.163.com/centos-vault/$releasever"
  17.     "http://mirrors.cloud.tencent.com/centos-vault/$releasever"
  18.     "http://vault.centos.org/$releasever"
  19. )

  20. # wzz 2024/7/8 下午3:35 临时repo文件
  21. TEMP_REPO="/etc/yum.repos.d/temp.repo"
  22. declare -A RESULTS

  23. # wzz 2024/7/8 下午3:35 测试每个YUM源的速度
  24. for REPO in "${YUM_REPOS[@]}"; do
  25.     if [ "$os_version" == "8" ] || [ "$os_version" == "8stream" ] ; then
  26.         c8_REPO_tmp="$REPO/BaseOS/$basearch/os/"
  27.         echo "正在测试 $c8_REPO_tmp ..."
  28.         URL=$(echo $c8_REPO_tmp | sed -e "s|$releasever|7|g" -e "s|$basearch|x86_64|g")
  29.     else
  30.         c8_REPO_tmp="$REPO/os/$basearch/"
  31.         echo "正在测试 $c8_REPO_tmp ..."
  32.         URL=$(echo $c8_REPO_tmp | sed -e "s|$releasever|7|g" -e "s|$basearch|x86_64|g")
  33.     fi

  34.     # wzz 2024/7/8 下午3:35 创建临时repo文件
  35.     cat >$TEMP_REPO </dev/null 2>&1; then
  36.         END=$(date +%s%N)
  37.         TIME_TAKEN=$((($END - $START) / 1000000))
  38.         RESULTS["$REPO"]=$TIME_TAKEN
  39.         echo "响应时间: $TIME_TAKEN ms"
  40.     else
  41.         echo "连接失败: $REPO"
  42.     fi
  43.     rm -f $TEMP_REPO
  44. done

  45. # wzz 2024/7/8 下午3:35 找到最快的YUM源
  46. FASTEST_REPO=""
  47. FASTEST_TIME=999999999

  48. for REPO in "${!RESULTS[@]}"; do
  49.     TIME=${RESULTS[$REPO]}
  50.     if [ $TIME -lt $FASTEST_TIME ]; then
  51.         FASTEST_TIME=$TIME
  52.         FASTEST_REPO=$REPO
  53.     fi
  54. done

  55. # wzz 2024/7/8 下午3:35 更新YUM源配置文件
  56. if [ -n "$FASTEST_REPO" ]; then
  57.     echo ""
  58.     echo "最快的yum源是: $FASTEST_REPO"
  59.     echo "响应时间: $FASTEST_TIME ms"

  60.     if [ -z "${download_Url}" ]; then
  61.         download_Url="http://download.bt.cn"
  62.     fi

  63.     if [ -f /etc/yum.repos.d/CentOS-Base.repo ]; then
  64.         rm -f /etc/yum.repos.d/CentOS-Base.repo
  65.     fi

  66.     if [ "$os_version" == "8" ]; then
  67.         curl -Ss --connect-timeout 3 -m 60 ${download_Url}/install/repos/c8/CentOS-Linux-BaseOS.repo -o /etc/yum.repos.d/CentOS-Linux-BaseOS.repo
  68.         sed -e "s|^mirrorlist=|#mirrorlist=|g"
  69.             -e "s|^#baseurl=http://mirror.centos.org/centos/$releasever|baseurl=$FASTEST_REPO|g"
  70.             -e "s|^#baseurl=http://mirror.centos.org/$contentdir/$releasever|baseurl=$FASTEST_REPO|g"
  71.             -i.bak
  72.             /etc/yum.repos.d/CentOS-*.repo
  73.     else
  74.         if [ "$os_version" == "8stream" ]; then
  75.             curl -Ss --connect-timeout 3 -m 60 ${download_Url}/install/repos/8stream/CentOS-Stream-BaseOS.repo -o /etc/yum.repos.d/CentOS-Stream-BaseOS.repo

  76.             sed -i.bak -e "s|^mirrorlist=|#mirrorlist=|g"
  77.                 -e "s|^#baseurl=http://mirror.centos.org/centos/$releasever|baseurl=$FASTEST_REPO|g"
  78.                 -e "s|^#baseurl=http://mirror.centos.org/$contentdir/$stream|baseurl=$FASTEST_REPO|g"
  79.                 /etc/yum.repos.d/CentOS-*.repo
  80.         else
  81.             curl -Ss --connect-timeout 3 -m 60 ${download_Url}/install/repos/c7/CentOS-Base.repo -o /etc/yum.repos.d/CentOS-Base.repo
  82.             sed -e "s|^mirrorlist=|#mirrorlist=|g"
  83.                 -e "s|^#baseurl=http://mirror.centos.org/centos/$releasever|baseurl=$FASTEST_REPO|g"
  84.                 -e "s|^#baseurl=http://mirror.centos.org/$contentdir/$releasever|baseurl=$FASTEST_REPO|g"
  85.                 -i.bak
  86.                 /etc/yum.repos.d/CentOS-*.repo
  87.         fi
  88.     fi
  89. else
  90.     echo "无法找到最快的yum源"
  91. fi

  92. echo "更新yum源成功!"
复制代码
蜘蛛侠免责声明

1、注册用户在本社区发表、转载的任何作品仅代表其个人观点,不代表本社区认同其观点。

2、如果存在违反国家相关法律、法规、条例的行为,我们有权在不经作者准许的情况下删除其在本论坛所发表的文章。

3、所有网友不要盗用有明确版权要求的作品,转贴请注明来源,否则文责自负。

4、本社区保护注册用户个人资料,但是在自身原因导致个人资料泄露、丢失、被盗或篡改,本论坛概不负责,也不承担相应法律责任。

0

主题

124

回帖

-26

积分

限制会员

积分
-26
发表于 2025-2-10 22:49:02
谢谢楼主,共同发展
回复

使用道具 举报

0

主题

43

回帖

-20

积分

限制会员

积分
-20
发表于 2025-2-11 20:32:58
哈哈哈
回复

使用道具 举报

0

主题

153

回帖

-18

积分

限制会员

积分
-18
发表于 2025-2-11 20:50:05
我抢、我抢、我抢沙发~
回复

使用道具 举报

0

主题

53

回帖

-1

积分

限制会员

积分
-1
发表于 2025-2-12 17:58:16
路过,支持一下啦
回复

使用道具 举报

0

主题

48

回帖

-4

积分

限制会员

积分
-4
发表于 2025-2-12 20:58:47
分享了
回复

使用道具 举报

0

主题

51

回帖

-16

积分

限制会员

积分
-16
发表于 2025-2-14 08:14:09
这是什么东东啊
回复

使用道具 举报

0

主题

47

回帖

-12

积分

限制会员

积分
-12
发表于 2025-2-16 16:24:49
看帖回帖是美德!
回复

使用道具 举报

0

主题

30

回帖

0

积分

新手虾米

Rank: 1

积分
0
发表于 2025-2-16 16:29:26
爱看
回复

使用道具 举报

0

主题

40

回帖

-22

积分

限制会员

积分
-22
发表于 2025-2-16 18:58:56
哦哦对
回复

使用道具 举报

下一页 »
1234下一页
返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

登录或注册

官方客服

客服QQ3112420388

官方QQ群

8911304381(蜘蛛侠交流群)

扫一扫快速加入

群号652692981

快速回复 返回顶部 返回列表