自动化部署必备技能—搭建YUM仓库
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,前言:YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),
千家信息网最后更新 2025年12月02日自动化部署必备技能—搭建YUM仓库
前言:
YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称为yum源。网络上有大量的yum源,但由于受到网络环境的限制,导致软件安装耗时过长甚至失败。特别是当有大量服务器大量软件包需要安装时,缓慢的进度条令人难以忍受。因此我们在优化系统时,都会更换国内的源。
相比较而言,本地YUM源服务器最大优点是局域网的快速网络连接和稳定性。有了局域网中的YUM源服务器,即便在Internet连接中断的情况下,也不会影响其他YUM客户端的软件安装和升级。
1. 创建yum仓库目录
mkdir -p /application/yum/centos6.6/x86_64/cd /application/yum/centos6.6/x86_64/rz # 上传rpm包到此目录,此目录下面还可以包括文件夹
2. 安装createrepo软件
yum -y install createrepo
3. 初始化repodata索引文件
createrepo -pdo /application/yum/centos6.6/x86_64/ /application/yum/centos6.6/x86_64/
4. 提供yum服务
# 可以用Apache或nginx提供web服务,但用Python的http模块更简单,适用于内网环境cd /application/yum/centos6.6/x86_64/python -m SimpleHTTPServer 80 &>/dev/null &可以通过浏览器输入本机IP查看。
5. 添加新的rpm包
# 只下载软件不安装yumdownloader pcre-devel openssl-develcreaterepo --update /application/yum/centos6.6/x86_64/ # 每加入一个rpm包就要更新一下。
平时yum安装软件时不删除安装包
# cat /etc/yum.conf keepcache=1# 安装包存储目录cachedir=/var/cache/yum/$basearch/$releasever# /var/cache/yum/x86_64/6/base/packages
6. 客户端配置
# cd /etc/yum.repos.d[root@B yum.repos.d]# vi oldboy.repo[oldboy]name=Serverbaseurl=enable=1gpgcheck=0[root@YUM ~]# yum --enablerepo=oldboy --disablerepo=base,extras,updates,epel list # 指定使用oldboy库
上面是临时使用内网yum源,想永久并简单使用yum -y install lrzsz命令,就需要修改配置文件将默认的repo文件关闭。
[root@oldboy ~]# cd /etc/yum.repos.d/[root@oldboy yum.repos.d]# vim CentOS-Base.repo# 在每一个启动的源加上# enabled=0 #改为1就启用,没有此参数也是启用。# 还有其他开启的仓库就使用这个办法关闭。
7. 镜像yum源
上面只是将自己制作的rpm包,放入yum源。但还有一种企业需求,说的更具体一点,平时学生上课yum安装软件都是从公网下载的,占用带宽,因此在学校里搭建一个内网yum服务器,但又考虑到学生回家也要使用yum安装软件,如果yum软件的数据库文件repodata不一样,就会有问题。因此我想到的解决方法就是直接使用公网yum源的repodata。
镜像同步公网yum源上游yum源必须要支持rsync协议,否则不能使用rsync进行同步。http://mirrors.ustc.edu.cn/status/CentOS官方标准源:rsync://mirrors.ustc.edu.cn/centos/epel源:rsync://mirrors.ustc.edu.cn/epel/同步命令:# 使用rsync同步yum源,为了节省带宽、磁盘和下载时间,我只同步了CentOS6的rpm包,这样所有的rpm包只占用了21G,全部同步需要300G左右。# 同步base源,小技巧,我们安装系统的光盘镜像含有部分rpm包,大概3G,这些就不用重新下载。/usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/os/x86_64/ /data/yum_data/centos/6/os/x86_64//usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/extras/x86_64/ /data/yum_data/centos/6/extras/x86_64//usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/updates/x86_64/ /data/yum_data/centos/6/updates/x86_64/# epel源/usr/bin/rsync -av --exclude=debug rsync://mirrors.ustc.edu.cn/epel/6/x86_64/ /data/yum_data/epel/6/x86_64/学生使用内网yum源方法# 可以自建一个内网dns,如果没有,可使用hosts解析。echo '192.168.0.200 mirrors.aliyun.com' >>/etc/hosts结果展示[root@KVM data]# du -sh yum_data 21G yum_data[root@KVM data]# tree -L 3 yum_data/yum_data/├── centos│ ├── 6│ │ ├── extras│ │ ├── os│ │ └── updates│ └── RPM-GPG-KEY-CentOS-6├── epel│ └── 6│ └── x86_64
软件
同步
服务
文件
仓库
服务器
目录
学生
系统
网络
软件包
镜像
公网
命令
客户
局域
局域网
带宽
方法
环境
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
查看两个数据库重合率方法
计算机网络技术考研难么
那美网络技术限公司招聘
sql数据库补丁
宝山区品牌网络技术欢迎咨询
db2数据库的索引设计
双非网络安全研究生
天津维科互联网科技有限公司
湟源租房软件开发
互联网行业网络安全审查
软件开发国标行业
设置无线网络安全类型
软件开发测试爱情文案
组态王如何删除报表数据库
农经权数据库质检软件下载
计算机网络技术4单元
泉州棋牌软件开发
数据库如何做热备
小学网络安全汇报材料
魔兽怎么选服务器
服务器的企业管理器打不开
女学生学计算机网络技术专业
探索互联网科技发展道路
手机版本不同的服务器怎么下载
山西网络安全突发事件应急演练
spc网络安全
如何进入当前环境的服务器
浅述网络安全产品
数据库怎么查cp
云南代理服务器地址