Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

使用yum安装软件包,需要配置成yum客户端,其主配置文件有两个分为位于/etc/yum.conf和/etc/yum.repos.d/yum.repo
/etc/yum.conf文件配置如下
[main]
cachedir=/var/cache/yum        #缓存目录位置
keepcache=0                    #是否保留缓存(包括仓库数据和RPM)1、代表保存 2、代表不存
debuglevel=2                   #设置日志记录等级(0-10),数值越高记录的信息越多
logfile=/var/log/yum.log       #设置日志文件路径
distroverpkg=redhat-release    #指定发行版本的软件包名称
tolerant=1                     #允许yum在出现错误时继续运行,如不需要更新的程序包
exactarch=1       #更新时是否允许更新不同版本的RPM包,设置为1表示精确匹配,即不允许更新不同版本的RPM包     obsoletes=1 #相当于upgrade,允许更新陈旧的RPM包   
gpgcheck=1  # 检验软件包的GPG签名 0代表不检查
plugins=1   # 默认开启YUM的插件使用

# Note: yum-RHN-plugin doesn't honor this.
metadata_expire=1h   #设置仓库数据的失效时间为1小时

# Default.
installonly_limit = 3    #允许保留多少个内核包

# PUT YOUR REPOS HERE OR IN separate files named file.repo
#  /etc/yum.repos.d  #指定仓库配置文件的目录


/etc/yum.repos.d/yum.repo  文件配置如下
[base]:代表窗口的名字,中括号一定要存在,里面的名字可以随意取。但是不能有两个相同的容器名称,否则YUM会不知道该到哪里去找容器相关软件
name=:只是说明一下这个容器的描述信息
miorrorlist=:列出这个容器可以使用的镜像站点,如果不想使用,可以注释掉此行
baseurl=:这个最重要,因为后面接的就是容器的实际网址。mirrorlist是由YUM程序自行去镜像站点,baseurl则指固定的一个容器网址
enable=1:容器启动开关,0代表为不开启
gpgcheck=1:是否需要查问RPM文件内的数字证书
gpgkey=1:这是数字证书公钥文件所在位置

YUM服务器支持的服务有三种:1、Ftp 2、Http 3、本地文件,配置情况对应如下
1、ftp://host_IP/opt/yum
2、http://hostname/opt/yum
3、file:///opt/yum

用yum安装软件包时的语法格式为
yum [option] [command] [packege] [packege] ....   
其中常用选项有:-y :表示软件安装过程中所有选择选择yes
                -q :表示以静默模式安装
                --nogpgcheck 不检查gpg认证签名
常用子命令为:     
       1 yum install package1 [package2] [...]                    #安装软件包
       2 yum update [package1] [package2] [...]                   #升级软件包
       3 yum check-update                                         #检查可用的更新包
       4 yum remove | erase package1 [package2] [...]             #卸载软件包
       5 yum list [...]   #列出当前系统上的软件包,其有子选项(all|available|installed|update)
       6 yum info [...]   #显示软件包摘要信息
       7 yum provides | whatprovides feature1 [feature2] [...]  #显示某个文件或功能是由哪个软件包提供的
       8 yum clean [ packages | headers | metadata | dbcache | all ]# 清空yum缓存,其有子选项(all|packages|headers|metadata|dbcache)
       9 yum makecache                      #手动创建缓存
       10 yum groupinstall group1 [group2] [...]  #安装软件包组,如果组名中间有空格要用“”引起来
       11 yum groupupdate group1 [group2] [...]   #升级软件包组
       12 yum grouplist [hidden] [groupwildcard] [...]  #列出当前系统上的软件包组
       13 yum groupremove group1 [group2] [...]   #卸载软件包组
       14 yum groupinfo group1 [...]     #显示软件包组的摘要信息
       15 yum search string1 [string2] [...]   #非精确匹配搜索软件包
       16 yum resolvedep dep1 [dep2] [...]      #显示依赖关系
       17 yum localinstall rpmfile1 [rpmfile2] [...]  #直接安装本地rpm包,需要使用长选项--nogpgcheck和使用全路径,
       18 yum localupdate rpmfile1 [rpmfile2] [...]   #升级本地软件包
       19 yum reinstall package1 [package2] [...]     #重新安装
       20 yum downgrade package1 [package2] [...]     #降级软件包
       21 yum deplist package1 [package2] [...]       #显示软件包依赖关系的列表
       22 yum repolist [all|enabled|disabled]         #显示示可用yum源列表