红帽系统离线更新yum源
1、文件目录结构
[root@dg1 rhel-7-server-rpms]# tree -L 2
.
├── 9d69672f86f4d058e1c2e7fd690c3e5fbf7a46e3-updateinfo.xml.gz
├── c76c2299-12f3-4f9c-b7bd-03bacee2c363
├── comps.xml
├── Packages
│ ├── 3
│ ├── a
│ ├── b
│ ├── c
│ ├── d
│ ├── e
│ ├── f
│ ├── g
│ ├── h
│ ├── i
│ ├── j
│ ├── k
│ ├── l
│ ├── m
│ ├── n
│ ├── o
│ ├── p
│ ├── q
│ ├── r
│ ├── s
│ ├── t
│ ├── u
│ ├── v
│ ├── w
│ ├── x
│ ├── y
│ └── z
└── upgrade.sh
2、脚本内容
cat upgrade.sh
#! /bin/bash
home_path=`pwd`
makedir(){
echo "please input the path:"
read folder
if [ ! -d "$folder" ]; then
mkdir -p $folder
else
echo "the folder $folder is already exists"
makedir
fi
echo "makedir done!"
}
installpackages(){
echo "==============install required software ================="
sleep 2
rpm -ivh $home_path/Packages/d/deltarpm*.rpm
rpm -ivh $home_path/Packages/p/python-deltarpm*.rpm
rpm -ivh $home_path/Packages/c/createrepo*.rpm
echo "install required rpm done!"
}
copyfile(){
echo "==============copy file to the created path=============="
sleep 2
cp -r $home_path/* $folder
echo "copy file done!"
}
createrepofile(){
echo "===============create repo file==========================="
sleep 2
cat > /etc/yum.repos.d/update.repo << EOF
[update]
name=update
baseurl=file://$folder
gpgcheck=0
enabled=1
EOF
echo "create repo file done!"
}
create_repo(){
echo "=============== start create repo======================== "
sleep 2
createrepo $folder
echo "create repo done"
}
#============main========================
makedir
installpackages
copyfile
createrepofile
create_repo
echo ""
echo "done!"
#====================================
yum clean all
yum makecache
作者:likaifei
出处:https://www.cnblogs.com/likaifei/p/16709143.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」