YUM命令解析
yum是rpm的强化版
yum全名为:Yellowdog Update Modifier
由于rpm的功能不是非常全面,不能解决程序间的依赖关系,并且如果没有rpm包的情况下不能安装。
yum可以完美的解决软件的依赖关系,可以在安装软件的时候自动分析软件的各个数据,从依赖关系到软件兼容性,会选择出最好的安装方法。
yum运行在C/S架构上
有yum服务端读取数据,再下载到客户端。
yum组成:
yum服务端:也称为yum仓库
包含有linux中常用的rpm包
包含有仓库的元数据,相当于所有rpm包的索引
元数据拥有: 包名、版本信息、各包所包含的文件列表、依赖关系、包分组信息
-----------------------------------------------------------------------------------------------------
yum客户端
提供repo配置文件,指明仓库访问路径及各种属性信息
主配置文件(中心配置文件):/etc/yum.conf
一个或几个相关仓库的配置信息可保存为一个文件,文件名都以.repo结尾:/etc/yum.repos.d/
[main]
缓存目录和子目录(子目录用宏表示):cachedir=/var/cache/yum/$basearch/$releasever安装以后是否还保存(0是不保存):keepcache=0信息:debuglevel=2日志:logfile=/var/log/yum.log
以下参数1表示开启,0表示关闭是不是平台精确匹配:exactarch=1obsoletes=1gpgcheck=1plugins=1installonly_limit=5bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yumdistroverpkg=centos-release
yum常用的客户端仓库地址配置:
配置文件地址:etc/yum.repos.d/name.repos
yum仓库地址配置的repos文件后缀名必须为repos否则无效。
配置文件repos的格式:
[REPOID]:repos名称--如base,update,extrax,主要来标注是干什么用的
name=Some name for this repository:yum仓库的名称,等号两端不得加空格
baseurl=url://path/to/repository/:用来指定真正的仓库所在地的,可以指定多个
例如:baseurl=ftp://172.16.1.1/path/repository
http://172.16.1.1/path/repository
Must be a URL to the directory where the yum repository’s ‘repodata’directory lives.
必须是url,url指向的要是仓库位置
mirrorlist=URL to a file:指向一个文件,文件中有大量镜像的地址,一般很少用
mirrorlist Specifies a URL to a file containing a list of baseurls.
enabled={0|1}:启用与否,此仓库是否可用,配置起来默认为生效,1生效,0失效
gpgcheck={0|1}:是否通过gpg机制来检测来源合法性跟完整性
gpgkey=url://:一般都要设置,跟设置的baserurl为统一地址为多
yum配置文件中可用的四个变量:
$releasever:程序的版本,自动获取本系统的发行版的主版本的版本号
$arch:获取系统架构
$basearch:获取本系统的,系统基本架构,如i686,i585都将变成i386
$uuid:获取yum仓库的uuid
$YUM0-9:在系统定义自定义变量
cost={1..n}:默认为1000,指定访问此仓库的开销,一般很少设置
在没有yum源的主机上可以自己设置一个repo文件来确定yum源地址。
如在redhat(红帽)系统上会有redhat自己的源,不过是需要服务费的,就可以自定义一个不需要收费的源。
安装程序包:
安装格式
yum install package_name
重新安装
yum reinstall package_name
升级
yum updata package_name
yum check-update:检查可用的升级包
yum update X-1.3.2 :可以指定升级到某个版本,需要指定版本号
降级
yum downgrade package_name
卸载
yum remove|erase package_name
查询某文件是由哪个包安装生成的
yum whatprovides|provides package_name
安装包组
yum groupinstall "GROUP NAME"
卸载包组
yum groupermove "GROUP NAME"
如果仅是单次安装需要:可以直接安装本地目录下的rpm包,yum会自动解决依赖关系
yum install /path/to/packe_file
转载于:https://blog.51cto.com/kmk0226/1662522