YUM仓库服务
部署YUM软件仓库
使用YUM工具管理软件包
一、YUM概述
1.YUM (Yellow dog Updater Modified)
- 基于RPM包构建的软件更新机制
- 可以自动解决依赖关系
- 所有软件包由集中的YUM软件仓库提供
2. 准备安装源3-1
2.1 软件仓库的提供方式
- FTP服务:ftp://..
- HTTP服务:http://.
- 本地目录:file://..
RPM软件包的来源
- Centos发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
2.2 准备安装源3-2
构建CentOS 7 软件仓库
- RPM包来自CentOS 7 DVD光盘
- 通过FTP方式提供给客户机
2.3 准备安装源3-3
在软件仓库中加入非官方RPM包组
- 包括存在依赖关系的所有RPM包
- 使用createrepo工具建立仓库数据文件
为客户机指定YUM仓库位置
- 配置文件:/etc/yum.repos.d/centos7.repo\
配置本地源仓库
cd /etc/yum.repos.d/
vim local.repo
[local] #仓库类别
name=local #仓库名称
baseurl=file:///mnt #指定URL 访问路径为光盘挂载目录
enabled=1 #开启此yum源,此为默认项,可省略
gpgcheck=0 #不验证软件包的签名
mount /dev/sr0 /mnt #把光盘挂载到/mnt目录下(前提虚拟机是光盘挂载)
##清理yum缓存并更新
yum clean all && yum makecache
###检查
yum repolist
制作ftp源
服务端:
(1)关闭防火墙
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
(2) 安装vsftpd服务端软件
[root@localhost yum.repos.d]# yum -y install vsftpd
创建并制作yum远程ftp站点的源
mkdir /var/ftp/centos7 #创建挂盘挂载目录
mount /dev/sr0 /mnt #镜像挂载
cp -rf /mnt/* /var/ftp/centos7/ & #&表示挂在后台
mkdir /var/ftp/other # 创建目录repodata 数据文件
cd /var/ftp/other/
createrepo -g /mnt/repodata/repomd.xml ./ #工具建立仓库数据文件
启动ftp服务
[root@localhost yum.repos.d]# systemctl start vsftpd #重启ftp服务
客户端配置:
同样先关闭防火墙 和配置本地yum仓库源
- 创建远程yum源的配置文件
- yum安装软件验证结果
-
vi /etc/yum.repos.d/centos7.repo [centos7] #仓库类别 name=centos7 #仓库名称(说明) baseurl=ftp://20.0.0.20/centos7 #URL 访问路径 enabled=1 #启用此软件仓库 gpgcheck=1 #验证软件包的签名 gpgkey=ftp://20.0.0.20/centos/RPM-GPG-KEY-CentOS-7 #GPG 公钥文件的位置 [other] name=centos7 baseurl=ftp://20.0.0.20/other enabled=1 #启用此软件仓库 gpgcheck=0 #验证软件包的签名
3、网络源
阿里云
下载地址:wget http://mirrors.aliyun.com/repo/Centos-7.repo
vim CentOS7-Base-aliyun.repo #编辑阿里云yum 网络源
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/contrib/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
三、yum命令
yum常用的操作命令
yum -y install 软件名 | #安装、升级软件包,“-y”选项表示自动确认 |
yum -y remove 软件名 | #卸载软件包,可自动解决其依赖关系 |
yum -y update 软件名 | #升级软件包 |
yum list | #查询软件包列表 |
yum list installed | #查询系统中已安装的软件包 |
yum list available | #查询仓库中尚未安装的软件包 |
yum list updates | #查询可以升级版本的软件包 |