软件包管理之yum
Posted dugukeling
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件包管理之yum相关的知识,希望对你有一定的参考价值。
YUM(YellowdogUpdate Modifier)是rpm的前端程序,可解决软件包相关依赖性,可在多个库之间定位软件包
yum仓库(yum repository)
yum repository存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下)
yum源可以来源于多种文件服务器
- http://
- https://
- ftp://
- file://
注意:yum 源的路径一定是 repodata目录的父目录
yum源配置
/etc/yum.conf:为所有仓库提供公共配置
[main] cachedir=/var/cache/yum/$basearch/$releasever # 缓存文件,baseserach是基础架构,如`x86_64`,releaserver是版本,如`7` keepcache=0 # 缓存源文件和安装成功后的下载包是否保存 debuglevel=2 logfile=/var/log/yum.log # 日志文件位置 exactarch=1 obsoletes=1 gpgcheck=1 # 是否进行gpg校验,0为不校验,1校验 plugins=1 # 是否支持插件 installonly_limit=5 # 允许同时安装几个程序包 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum distroverpkg=centos-release
/etc/yum.repos.d/*.repo:为仓库的指向提供配置
仓库指向的定义
[repositoryID] # 仓库ID name=Some name for this repository # 仓库名 baseurl=url://path/to/repository/ # 仓库地址 enabled={1|0} # 是否启用 gpgcheck={1|0} # 是否进行gpg校验,默认值为1,即为校验 gpgkey=URL # 如果gpgcheck值为1,要给定gpgkey地址 enablegroups={1|0} # 是否支持组 failovermethod={roundrobin|priority} # 仓库的选取方法,roundrobin意为随机挑选,默认;priority按顺序访问 cost= # 花费值,默认为1000
配置本地光盘 yum 源,阿里云 epel 源
[[email protected] ~]# mkdir /media/cdrom [[email protected] ~]# mount -r /dev/cdrom /media/cdrom [[email protected] ~]# mkdir /etc/yum.repos.d/backup [[email protected] ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup [[email protected] ~]# vim /etc/yum.repos.d/centos7.repo [cdrom] name=cdrom for centos7 baseurl=file:///media/cdrom gpgcheck=0 enabled=1
[epel]
name=epel for centos7
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-7
enabled=1
[[email protected] ~]# yum repolist
yum命令
yum命令语法
yum [options] [command] [package ...]
yum命令行选项(命令行选项的优先级高于配置文件)
--nogpgcheck:禁止进行gpgcheck -y: 自动回答为“yes” -q:静默模式 --disablerepo=repoidglob:临时禁用此处指定的repo --enablerepo=repoidglob:临时启用此处指定的repo --noplugins:禁用所有插件
yum源列表
yum repolist [all|enabled|disabled] 显示仓库列表 yum grouplist [hidden] [groupwildcard] [...] 显示包组 yum list {available|installed|updates} [glob_exp1] [...] 显示包列表
yum安装更新卸载
yum install package1 [package2] [...] 安装包 yum install rpmfile1 [rpmfile2] [...] 安装本地rpm包 yum groupinstall group1 [group2] [...] 安装包组 yum reinstall package1 [package2] [...] 重新安装包 yum check-update 检查可用升级 yum update [package1] [package2] [...] 升级包 yum downgrade package1 [package2] [...] 降级包 yum update rpmfile1 [rpmfile2] [...] 升级本地rpm包 yum groupupdate group1 [group2] [...] 升级包组 yum remove | erase package1 [package2] [...] 卸载包 yum groupremove group1 [group2] [...] 卸载包组
yum查询搜索
yum info [...] 查看程序包信息 yum provides | whatprovides feature1 [feature2] [...] 查看指定的特性(可以是某文件)是由哪个程序包所提供 yum search string1 [string2] [...] 以指定的关键字搜索程序包名及summary信息 yum deplistpackage1 [package2] [...] 查看指定包所依赖的capabilities
yum缓存
yum makecache 构建缓存 yum clean all 清除缓存(不彻底的话 rm -rf /var/cache/yum)
yum历史
yum history 显示yum操作历史,是按照/var/log/yum.log进行的查找 yum history info 6 查看第六条信息 yum history undo 6 撤销第六步,如果第六步是安装,则执行此命令,将删除第六步所安装的程序,。如果第六步是卸载,那么执行此命令,则进行安装卸载掉的程序 yum history redo 6 重做第六步
以上是关于软件包管理之yum的主要内容,如果未能解决你的问题,请参考以下文章