文章目录
- 1. YUM仓库服务
- 1.1 YUM概述
- 1.1 准备安装源
- 2.制作YUM源
- 2.1制作ftp源
- 2.2 国内在线yum源
- 2.3 本地源与在线源同时使用
- 3.yum软件包的下载方式
- 4.yum的常用操作命令
1. YUM仓库服务
1.1 YUM概述
yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系=,解决了日常工作中的大量查找安装依赖包的时间。
先在yum服务器上创建yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件=(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包以及依赖关系,自动从仓库中找到相关包下载并安装。yum需要依赖环境,依赖于服务端和客户端,允许跨网路。
1.1 准备安装源
(1)软件仓库的提供方式
YUM软件仓库类型
仓库类型 | 安装路径 |
---|---|
本地源 | baseurl=file://… |
ftp源 | baseurl=ftp://… |
在线源 | baseurl=http://… baseurl=https://… |
(2)RPM软件包的来源
CentOS发布的RPM包集合
第三方组织发布的RPM包集合
用户自定义的RPM包集合
(3)构建CentOS 7软件仓库
(4)在软件仓库中加入非官方RPM包组
创建软件包依赖关系索引表
createrepo -g 软件包目录 依赖关系索引表文件的所在目录
-g:指定依赖关系索引表文件的所在目录
索引表或者叫YUM仓库的依赖关系表repodata,是根据createrepo命令由系统自动生成的,里面存有各种软件包之间的相互依赖关系;
(5)本地YUM仓库
(6) 访问YUM仓库
2.制作YUM源
2.1制作ftp源
(1)开启vsftp服务,关闭防火墙;
systemctl start vsftpd
systemctl enable vsftpd
systemctl stop firewalld
setenforce 0
(2)将光盘镜像文件挂载到FTP共享目录中
(3)配置ftp的yum源
vim /etc/yum.repo.d/ftp.repo #创建FTP源文件
[ftp]
name=ftp
baseurl=ftp://192.168.243.99/ftpyum #光盘挂载目录
enable=1 #开启仓库,默认为开启
gpgcheck=1 #开启数字签名,0为不开启
gpgkey=ftp://192.168.243.99/ftpyum/RPM-GPG-KEY-CentOS-7 #数字签名的路径
yum clean all && yum makecache #清除原有缓存,建立元数据缓存
(4)把FTP源发给其它主机即可通过FTP源下载软件包
2.2 国内在线yum源
这里选择用阿里云的在线源[阿里在线源](https://mirrors.aliyun.com/repo/)
wget -O /etc/yum.repos.d/aliyun.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#从阿里云的镜像地址中下载安装阿里云的在线源
使用国内yum源替换掉国外的yum源;
查看将yum源修改为国内阿里云的镜像源;
2.3 本地源与在线源同时使用
(1)下载插件yum-plugin,用于标注yum源的优先级;
yum-plugin-priorities #是通过优级确认使用本地源还是在线源
(2)通过设置优先级来实现本地源于在线源同时使用,本地源由优先使用本地源下载,其次才是在线源;
yum -y install yum-plugin-priorities
下载yum服务的扩展包,下载完成后自动生效
配置文件:/etc/yum/pluginconf.d/priorities.conf
{ [main]
enabled=1 #数字越小,优先级越大
}
enabled=1则为开启状态(默认),=0则为关闭状态
使用在线源的扩展包,下载在线源以及ftp源无法安装的软件包;
配置在线源和本地源共同使用的优先级;
配置使用yum源的优先级;
3.yum软件包的下载方式
(1)开启缓存下载
yum下载软件包虽然会自动下载依赖包以保证正常安装所需软件包,但是依赖包会在安装完后自动删除,可以修改配置文件:/etc/yum.conf让依赖包不会被自动删除,即可得到所有下载的软件包。
vim /etc/yum.conf #Linux下载完软件包会自动把软件包删除清除缓存,要建立索引表,我们就要留下缓存
{###可以指定下载的缓存目录
cachedir=缓存目录
###=1为开启缓存(即不删除缓存),=0为关闭缓存(下载完即删除)
keepcache=1
查看指定路径中保存的安装包缓存文件;
查询符合指定条件的文件,并复制到指定目录中;
(2)通过yum命令选项进行下载
yum -y install 软件 --downloadonly --downloaddir=下载目录
--downloadonly:下载该软件时,仅下载软件包,不进行安装(默认自动安装)
--downloaddir=:指定软件包的下载目录
(3)通过yumdownloader命令进行下载
yumdownloader 软件 --destdir=下载目录 --resolve
--destdir=:指定软件包的下载目录
--resolve:自动解决依赖关系,连同依赖包一起下载
4.yum的常用操作命令
yum常用的操作命令:
###安装、升级软件包,"-y" 选项表示自动确认
yum -y install 软件名
###卸载软件包,可自动解决其依赖关系(只删除软件包,不删除其配置文件)
yum -y remove 软件名
###卸载软件包,可自动解决其依赖关系(删除软件包的同时删除其配置文件)
yum -y erase 软件名
###升级软件包
yum -y update 软件名
###查询软件包列表
yum list
###查询系统中已安装的软件包
yum list installed
###查询仓库中尚未安装的软件包
yum list available
###查询可以升级版本的软件包
yum list updates
###查询软件包的描述信息
yum info 软件名
###根据某个关键词来查找相关的软件包
yum search [all] 关键词
###查询命令属于哪个软件包
yum whatprovides 命令
###使用yum方式进行安装
yum install -y gcc gCC-C++ make