提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
一、YUM仓库服务
1.YUM (Yellow dog Updater Modified)
- 基于RPM包构建的软件更新机制
- 可以自动解决依赖关系
- 所有软件包由集中的YUM软件仓库提供
2.准备安装源
软件仓库的提供方式
- FTP服务:baseurl=ftp://…
- HTTP服务:baseurl=http://…
- 本地目录:baseurl=file://…
RPM软件包的来源
- CentOs发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
软件仓库类型 | baseurl | 支持的访问数量 | 优缺点 |
---|---|---|---|
本地源 | =file://… | 一对一 | 软件安装快,软件数量少,版本低 |
ftp源 | =ftp://… | 多对一 | 软件安装快,软件数量少,版本低 |
在线源 | =http://… | 多对一 | 软件数量多,版本新,但安装前需要更新缓存,安装速度较慢 |
构建CentOS7软件仓库
- RPM包来自CentOS 7 DVD光盘
- 通过FTP方式提供给客户机
在软件仓库中加入非官方RPM包组
- 包括存在依赖关系的所有RPM包
- 使用createrepo工具建立仓库数据文件
访问yum仓库
- 为客户机指定YUM仓库位置
- 配置文件: /etc/yum.repos.d/centos7.repo
3.yum下载软件包的方式
1.开启缓存下载
yum下载软件包虽然会自动下载依赖包以保证正常安装所需软件包,但是依赖包会在安装完后自动删除,可以修改配置文件:/etc/yum.conf让依赖包不会被自动删除,即可得到所有下载的软件包
vim /etc/yum.conf
{
cachedir=缓存目录 ##可以指定下载的缓存目录
keepcache=1 ##=1为开启缓存(即不删除缓存),=0为关闭缓存(下载完即删除)
}
2.通过yum命令的选项下载
语法:yum -y install 软件 --downloadonly --downloaddir=下载目录
--downloadonly ##下载该软件时,仅下载软件包,不进行安装(默认自动安装)
--downloaddir= ##指定软件包的下载目录
3.通过yumdownloader命令进行下载
语法:yumdownloader 软件 --destdir=下载目录 --resolve
--destdir= ## 指定软件包的下载目录
--resolve ## 自动解决依赖关系,连同依赖包一起下载
二、yum 仓库源的搭建
1.搭建yum本地源的方式
cd etc/yum.repos.d # 进入yum源目录
vim local.repo # 创建local.repo文件,并进入vim编辑器
[local] # 配置项名字自定义
name=local # 指定仓库名称
baseurl=file:///mnt # 指定仓库路径
enabled=1 # 1代表打开仓库,0代表关闭仓库
qpgcheck=0 # 1代表开启仓库检查,0代表关闭仓库检查
:wq # 保存退出vim编辑器
yum clean all && yum makecache # 删除原有缓存并更新
2.搭建ftp yum仓库
1.服务端安装 vsftpd服务
yum install -y vsftpd
2.服务端在/var/ftp/ 下创建一个文件,并且挂载
cd /var/ftp
mkdir centos7
mount /dev/sr0 /var/ftp/centos7/
3.客户端搭建ftp yum仓库
cd /etc/yum.repos.d/
mkdir repo.bak
mv *.repo repo.bak/
vim /etc/yum.repos.d/ftp.repo
[ftp]
name=ftp
baseurl=ftp://192.168.142.30/centos7
enabled=1
gpgcheck=0
4.关闭防火墙和selinux,启动服务端的vsftpd服务,刷新yum源,进行更新
systemctl start vsftpd
systemctl stop firewalld.service
setenforce 0
yum clean all && yum makecache
3.搭建http yum仓库
1.关闭防火墙和selinux,并下载安装好httpd 相关软件包
systemctl stop firewalld
setenforce 0
yum install -y httpd
2.服务端在/var/www/ 下创建一个文件,并且挂载
3.客户端搭建http yum仓库
cd /etc/yum.repos.d/
mkdir repo.bak
mv *.repo repo.bak/
vim /etc/yum.repos.d/local.repo
4.开启httpd服务,刷新yum源,进行更新
systemctl restart httpd
yum clean all && yum makecache