rpm包的前端工具--yum

why–为什么是yum
yum依赖于rpm,功能比rpm强大
因为rpm有一个很大的缺陷就是依赖关系,yum的出现就是用来解决依赖关系的

what–什么是yum
(1)yum架构:
C/S架构
(2)yum仓库:
yum的工作依赖于server端的yum仓库(yum repository)
yum仓库中的元数据文件(位于repodata目录下):
primary.xml.gz:所有rpm包的列表、各种包的依赖关系、每个rpm包安装生成的文件列表(局部概念)
filelists.xml.gz:当前仓库中所有rpm包的文件列表(全局概念)
other.xml.gz:额外信息,rpm包的修改日志(单个软件包各个发行版的发行时间、作者等)
repomd.xml:记录的是上面三个文件的时间戳和校验和
comps*-.xml:rpm分组信息
(3)yum配置:/etc/yum.conf
yum仓库的配置文件:/etc/yum.repos.d/目录下面的各个文件就是各个仓库文件(文件名格式:file.repo,必须是以repo结尾)
定义repo文件:(for example)
[Repo_ID]
name=Description
baseurl= #有三种路径,ftp、http、file(本地)
ftp://
http://
file:///(第3个/表示根路径)
enable={1|0} #1表示启用
gpgcheck={1|0} #1表示校验
gpgkey= #如果设置gpgcheck=1必须有此项,否则不需要此项

how–怎么使用yum
备注:要注意跟rpm命令对比下,很多命令的功能是差不多的
(1)yum clean:清缓存
(2)yum list [all|available|installed]:查看所有的安装包,包括安装的和未安装的(已安装的最后一个字段显示install,未安装的显示[Repo_ID],也就是仓库文件里面的第一行定义的那个ID)
yum list all:显示所有的软件包(直接yum list默认也是显示所有的软件包)
yum list available:可用的,仓库中有但是未安装的
yum list installed:已经安装的
yum list updates:可用的升级
yum list all +通配符的包名:查看匹配的软件包
(3)yum repolist [all|enabled|disabled]:查看库的信息
yum repolist all:显示所有repo列表及其简要信息
yun repolist enabled:显示可用的repo列表及其简要信息(直接yum repolist默认就是显示enabled的repo表)
yum repolist disabled:显示不可用的repo列表及其简要信息
(4)yum install:安装软件包
(5)yum update:默认升级到最新版本
yum update-to:指定升级到特定版本
(6)yum remove/rease:卸载
(7)yum info:查看软件包的简要信息
(8)yum provide/whatprovides:查看指定的文件或特性是由哪个包生成的
(9)软件包组group
yum groupinfo
yum grouplist
yum groupremove
yum groupupdate
yum groupinstall
yum grouplocalinstall
备注:groupinstall和grouplocalinstall的区别在于,install只需要指定包名,localinstall则必须指定包文件,也就是以rpm包结尾的文件。用yum相比用rpm安装的好处在于,如果仓库中刚好包有依赖包,yumlocalinstall可以解决依赖关系

创建yum仓库:
createrepo命令