yum概述
yum(Yellow dog Updater, Modified)是一个基于RPM包(Red-Hat Package Manager)构建的软件更新机制,它的有点就是可以自动解决软件包之间的依赖关系
注意yum安装一定要有安装包和元数据(repodata)
1.yum 的实现过程
软件仓库的提供方式(三种)
- 1.本地yum源(file:///mnt)
- 2.http yum源(http:///192.168.140.111/centos7)
- 3.ftp yum源(ftp:///192.168.140.111/centos7)
先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下,内含有软件的依赖关系和软件的位置),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询元数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装
yum实现安装,依赖于环境,依赖于服务端和客户端,允许跨网络(当本身既是服务端也是客户端时,建立本地yum仓库)
1.1 yum仓库类型:
- 光盘的仓库基本仓库
- epel扩展仓库
1.2 yum(工作原理)如何实现安装图文
2. yum的配置文件
仓库服务器 (服务端):
提供RPM安装包和元数据给客户端
- RPM安装包(存放于Packages文件夹内)
- 元数据 (repodata目录)
元数据内存有(repodata文件夹,即软件的目录),软件的依赖关系和软件的位置
客户端 :
根据得到的配置文件信息去仓库找对应的包并下载到本地
客户端的配置文件中,baseurl= 后面的地址 一定要写到到 这两个文件夹 repodata
packages
的上级目录
(且一定要有配置文件 *.repo
,配置文件必须以.repo
结尾
客户端默认配置一般存放在文件目录 /etc/yum.repo.d/
下)
最终形成的两个文件夹:
- Packages (包文件夹一般取名packages)
- repodata(元数据文件夹)
主配置文件一般格式:
[xxxx] #仓库的描述 自定义
name = xxxx #仓库的名字 自定义
baseurl= file:///目录 #目录就是软件包所在的位置,最后一个/是根目录,例如配置信息存放在/mnt下,就是file:///mnt
#baseurl 指明服务端的位置
#http://+网页路径
#ftp://+本地文件路径
gpgcheck=0 #关闭完整性 安全性校验
#gpgcheck=1 就是进行安全效验
2.1日志文件
存放于/var/log/yum.log中
4.常用的yum命令及作用
命令 | 不加关键字 | 加入关键词、软件包、软件包组 |
---|---|---|
yum list | 显示所有可用包 | 单个的可安装包 |
yum info | 显示所有可用包的信息 | 单个具体的信息 |
yum search | 模糊查找所有的相关信息 | |
yum provides | 精确查找 | |
yum grouplist | 显示所有可用包组 | 显示具体的包组 |
yum groupinfo | 显示所有的包组具体信息 | 显示具体的包组的具体信息 |
yum install | 安装具体软件包 | |
yum groupinstall | 安装具体软件包组 | |
yum update | 所有软件升级 | 具体软件升级 |
yum group update | 所有包组升级 | 具体包组升级 |
yum remove | 卸载具体软件 | |
yum groupremove | 卸载具体包组软件 | |
yum history | 查看当前yum操作历史 | |
yum history undo | 加入序号卸载序号里安装的软件 | |
yum history redo | 加入序号重新执行序号里的操作 |
安装
4.1 yum install 安装下载
格式:yum install 软件名
选项:
-y:全部同意(不加-y选项,安装好软件的时候会一直有询问是否同意)
查询
4.2 yum list 显示可用的安装包
4.3 yum info 显示指定安装包详细信息
格式:yum info 软件名
不论是不是已经安装,都可以查询显示
4.4 yum search 根据关键词查找软件安装包
格式:yum search 关键词
4.5 yum provides 根据命令名查找对应的软件包
格式:yum provides 命令
4.6 yum grouplist 查询安装包组
格式:yum grouplist 包组名
4.7 yum groupinfo 查询安装包组的详细信息
格式:yum groupinfo 包组名
以最小化安装包组Minimal Install示例:
4.8 yum history 查看历史的使用记录
格式:yum history
卸载
4.9 yum remove 卸载软件
格式:yum remove 软件名
4.10 yum history undo 通过历史记录命令卸载
对比yum remove卸载,使用yum history undo进行卸载可以将所有的依赖关系都删除
格式:yum history undo id号
id号可以通过yum history查看
如果卸载完发现卸载错了或者后悔了,可以通过
yum history redo id号重新安装
特殊
4.11 只下载不安装
当内网的一台主机安装某个软件包却缺少依赖包时,可以先由一台可连接外网的服务器下载依赖包,之后共享给这台主机
yum install --downloadonly +软件名称
# --downloaddir 是只下载不安装时指定rpm包存放路径
5.搭建本地yum仓库
之前博客中有简单介绍yum本地仓库的搭建
以下是全程图文示例
6.使用HTTP方式搭建yum仓库
服务端IP地址:192.168.1.10
客户端IP地址:192.168.1.100
服务端:
客户端:
7. 使用FTP方式搭建yum仓库
服务器ip地址:192.168.1.10
客户端ip地址:192.168.1.100