一、YUM简介
YUM, 国外有称yellow dog,也叫Yellowdog Update Modifier,CentOS系统除了YUM可以自动化安装程序外,还有dnf,新的程序包管理工具,不过这里主要总结YUM的使用方法和经验。
yum仓库称为yum repository,简称yum repo, yum仓库存储了众多的rpm包,以及报的相关元数据文件(放置于特定目录下: 一般repodata文件所在的目录就是仓库应该指向的路径)。yum仓库可以称之为文件服务器,可以由ftp://、http://、nfs://、file://、等方式来使用。
配置文件
/etc/yum.conf 为所有仓库提供公共配置,查看系统详细介绍:man yum,/etc/yum.repos.d/*.repo 为每个单独的仓库提供配置,
仓库定义:
[repositoryID] name=Some name for this repository baseurl=url://path/to/repository/ enabled={1|0} : 是否启用此仓库 gpgcheck={1|0} : 是否检查程序包完整性和来源合法性 gpgkey=URL : 指明校验的密钥文件 failovermethod={roundrobin|priority} : 故障转移方法,从多个baseurl的url选择使用方式 ,轮询和优先级,默认为roundrobin称为轮询或随机
二、YUM命令用法:
yum [options] [command] [package …]
command:
1. 显示仓库列表:repolist [all|enabled|disabled]
2. 显示程序包:list (如下命令支持globe格式通配符)
- yum list [all | glob_exp1] [glob_exp2] […] 列出所有程序包
- yum list available [glob_exp1] […] 列出所有可用包
- yum list updates [glob_exp1] […] 列出可更新程序包
- yum list installed [glob_exp1] […] 列出已安装包
- yum list extras [glob_exp1] […] 列出extras仓库包
3. 安装程序包:install package1 package2 […]
4. 升级程序包:update package1 package2 […]
5. 降级程序包:downgrade package1 package2 […]
6. 检查可用升级包:check-update
7. 卸载指定程序包(依赖包也会被卸载):remove | erase package1 package2 […]
8. 查看指定的特性(可以是某文件)是由哪个程序包所提供:provides | whatprovides feature1 feature2 […]
9. 清理本地缓存:clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
10. 构建缓存:makecache
11. 根据关键字搜索程序包或summary信息:search string1 [string2] […]
12. 重新(覆盖)安装:reinstall package1 [package2] […]
13. 显示依赖关系,指定包所依赖的capabilities:deplist package1 [package2] […]
14. 查看yum历史事务:history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
15.查看依赖包的位置
如报错:Delta RPMs disabled because /usr/bin/applydeltarpm not installed
]# yum provides '*/applydeltarpm' Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.163.com * extras: mirrors.163.com * updates: mirrors.163.com deltarpm-3.6-3.el7.x86_64 : Create deltas between rpms Repo : base Matched from: Filename : /usr/bin/applydeltarpm
解决此报错需要安装deltarpm
]# yum install deltarpm -y
16. 安装及升级本地程序包(CentOS7以下使用):
localinstall rpmfile1 [rpmfile2] […]
(maintained for legacy reasons only – use install)
* localupdate rpmfile1 [rpmfile2] […]
(maintained for legacy reasons only – use update)
包组管理相关命令:groupinstall “Development Tools”
{groupinstall | groupupdate | grouplist | groupremove | groupinfo } group1 [group2] […]
search string1 [string2] […]
yum命令行选项:
–nogpgcheck : 禁止进行gpg check;
-q : 静默模式安装
–disablerepo=repoidglob : 临时禁用此处指定的repo;
–enablerepo=repoidglob : 临时启用此处指定的repo;
–noplugins : 禁用所有插件;
yum的repo配置文件中的常用变量
$releasever : 当前OS发行版的主版本号;
$arch : 平台类型;
$basearch : 基础平台;
$YUM0-$YUM9 : 自定义变量
三. 创建YUM仓库
1. 安装createrepo文件可以帮助创建组织和管理rpm包的repo文件
yum install createrepo;
2. 到rpm包文件目录执行createrepo命令, 格式 : createrepo [options] <directory>, directory为rpm包文件目录路径
3. 编写yum配置文件
baseurl=file:///yum/repo (rpm包的路径)
补充:挂载光驱作为yum仓库,
1. 挂载:mount -r /dev/cdrom /media/cdrom
2. 编写yum仓库配置文件
常用命令总结:
1.使用YUM查找软件包
命令:yum search
2.列出所有可安装的软件包
命令:yum list
3.列出所有可更新的软件包
命令:yum list updates
4.列出所有已安装的软件包
命令:yum list installed
5.列出所有已安装但不在 Yum Repository 内的软件包
命令:yum list extras
6.列出所指定的软件包
命令:yum list
7.使用YUM获取软件包信息
命令:yum info
8.列出所有软件包的信息
命令:yum info
9.列出所有可更新的软件包信息
命令:yum info updates
10.列出所有已安装的软件包信息
命令:yum info installed
11.列出所有已安装但不在 Yum Repository 内的软件包信息
命令:yum info extras
12.列出软件包提供哪些文件
命令:yum provides
参考琼杰笔记文档:
Linux深入学习之程序包管理【一】
评论前必须登录!
注册