centos7更换aliyun软件源一键脚本
centos7更换aliyun软件源
centos7更换aliyun软件源一键脚本
curl -O https://raw.githubusercontent.com/Yogoshiteyo/aliyun.repo/main/chageyum.sh && chmod +x chageyum.sh && ./chageyum.sh
换源完成
[root@localhost tmp]# yum repolist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
- base: mirrors.aliyun.com
- extras: mirrors.aliyun.com
- updates: mirrors.aliyun.com
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10,072
cker-ce-stable/x86_64 Docker CE Stable - x86_64 337
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13,791
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 526
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 6,173
repolist: 30,899
chageyum.sh
#!/bin/bash
function install_docker_repo() {
read -p "是否安装Docker源? (y/n): " install_docker
if [[ $install_docker == "y" || $install_docker == "Y" ]]; then
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
fi
}
function setup_aliyun_repo() {
local repo_dir="/etc/yum.repos.d/aliyun"
if [ ! -d "$repo_dir" ] || [ -z "$(ls -A $repo_dir)" ]; then
echo "未找到阿里云源的文件,确保文件已下载。"
return 1
fi
backup
echo "现有的YUM源文件已备份到 /etc/yum.repos.d/backup"
rm -rf /etc/yum.repos.d/*.repo
cp $repo_dir/*.repo /etc/yum.repos.d/
yum clean all
yum makecache
install_docker_repo
}
function backup() {
if [ ! -d "/etc/yum.repos.d/backup" ]; then
mkdir /etc/yum.repos.d/backup
fi
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
if [ $? -ne 0 ]; then
echo "备份失败,请检查权限或路径。"
return 1
fi
}
function chyum() {
PS3='选择操作: '
options=("阿里云" "恢复备份" "退出")
select fav in "${options[@]}"; do
case $fav in
"阿里云")
setup_aliyun_repo || continue
exit
;;
"恢复备份")
restore_backup || continue
exit
;;
"退出")
echo "用户请求退出"
exit
;;
*)
echo "无效选项 $REPLY"
;;
esac
done
}
function download_repo_file() {
local url=$1
local output=$2
local attempts=3
for ((i=1; i<=attempts; i++)); do
curl -o $output $url
if [ -s $output ] && grep -q "baseurl" $output; then
echo "$output 下载成功"
return 0
else
echo "$output 下载失败,重试 $i/$attempts"
fi
done
echo "$output 下载失败"
return 1
}
function download_repo_files() {
mkdir -p /etc/yum.repos.d/aliyun
download_repo_file https://mirrors.aliyun.com/repo/Centos-7.repo /etc/yum.repos.d/aliyun/CentOS-Base.repo
download_repo_file https://mirrors.aliyun.com/repo/epel-7.repo /etc/yum.repos.d/aliyun/epel.repo
}
if [ ! -d "/etc/yum.repos.d/aliyun" ]; then
download_repo_files
fi
chyum
centos7更换aliyun软件源一键脚本的更多相关文章
- Centos7 更换yum软件源
https://blog.csdn.net/zhinian1204/article/details/123975403
- SuperUpdate.sh 一键更换Linux软件源脚本
一.前言 有时候会遇到 Linux 的源更新速度非常的缓慢,特别是在国内使用默认的源,因为国内的网络环境,经常会出现无法更新,更新缓慢的情况.在这种情况下,更换一个更适合或者说更近,更快的软件源,会为 ...
- 更换Ubuntu软件源
对于Ubuntu系统, 不同的版本的源都不一样,每一个版本都有自己专属的源. 而对于 Ubuntu 的同一个发行版本,它的源又分布在全球范围内的服务器上.Ubuntu 默认使用的官方源的服务器在欧洲, ...
- CentOS7更换阿里yum源
更换之前确保自己安装wget yum list wget 若没有安装: yum -y install wget 首先备份原版/etc/yum.repos.d/CentOS-Base.repo cd / ...
- [daily] 在CentOS7中使用 sanitizer-address 发现内存问题 / CentOS7使用SCLo软件源安装devtoolset软件
接前文: [daily] 内存越界的分析与定位 如前文提及, 使用sanitizer-address 可以有效的检查程序的内存问题. 当时在CentOS7中,虽然也可以使用,但是却遇到如下两个问题: ...
- CentOS7 更换阿里云源
搭建opensack时原生的源不好使就换了个阿里云的源试试 百度搜到的方法:https://blog.csdn.net/chavo0/article/details/51939362 1.备份 # m ...
- 更换ubuntu软件源的方法
第一步:查看本系统Codename 输入lsb_release -a查看本系统Codename,我的codename是bionic,如图: 第二步:搜索与codename对应的镜像地址 我搜索到的是: ...
- kali更新软件源
首先就是修改软件源文件 /etc/apt/sources.list 可以用leafpad打开,在终端中键入: leafpad /etc/apt/sources.list 原码是kali官方的软件源,更 ...
- centos7更换镜像源
更换软件源 由于国外的软件源在yum 安装时比较慢,更换为国内的源,以阿里的源的更换方式 下载wgetyum install wget -y echo 备份当前的yum源mv /etc/yum.rep ...
- linux centos&Ubuntu&RedHat更换软件源
linux三大版本更换软件源 前排提示,有的源可能已经失效,如果发现请留言或自行寻找其他源. 1.centos mv /etc/yum.repos.d/CentOS-Base.repo [--path ...
随机推荐
- 莫烦tensorflow学习记录 (3)建造我们第一个神经网络
另一个学习文档http://doc.codingdict.com/tensorflow/tfdoc/tutorials/overview.html 定义 add_layer() https://mof ...
- 直播相关-搭建直播流服务器nodejs
一.安装nodejs环境 去nodejs官方网站下载安装包 https://nodejs.org/en/#download 安装完成之后测试: LUNLI-MC1:~ lunli$ node -v v ...
- vue-cli 单文件组件 工具安装
https://cli.vuejs.org/zh/ 在很多 Vue 项目中,我们使用 Vue.component 来定义全局组件,紧接着用 new Vue({ el: '#container '}) ...
- 无法删除此对象,因为未在 ObjectStateManager 中找到它。
无法删除此对象,因为未在 ObjectStateManager 中找到它. 不能直接删除实体类, 用Service提供的: void Delete(long[] ids); void Delete(l ...
- Java接口签名和验签
Java接口签名和验签 import com.alibaba.fastjson.JSON; import org.apache.commons.lang3.StringUtils; import ja ...
- 『手撕Vue-CLI』完善提示信息
前言 经过『手撕Vue-CLI』自动安装依赖,已经实现了自动安装依赖的功能. 然而,虽然项目已复制并安装依赖,但其提示信息并不够友好,于是我试着去运行了一下vue create,发现其提示信息是这样的 ...
- 快速上手Python编程
前言 .center { width: auto; display: table; margin-left: auto; margin-right: auto } 类型 原理 优点 缺点 编译型语言 ...
- SpringBoot 3.x 结合 Swagger3 (Knife4j )踩坑实录
SpringBoot 3.x + Swagger3 踩坑实录 我的是springboot 版本是:3.2.2 <parent> <groupId>org.springframe ...
- 在Xcode编写我们的quick help
程序环境 Xcode 13.2.1 "写代码要经常写注释."虽然很多人不以为然,但是在使用Xcode的时候,我们在写注释的时候稍微注意一下格式的话,Xcode会给我们带来额外的正反 ...
- java关于json的一些问题
今天重写代码的时候,发现了一个异常:java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntim ...