yum (全称Yellow dog Update)命令是 RedHat 和 Fedora 以及 SUSE 中基于 rpm 软件包管理器。全称 Yellowdog Updater,Modified。起初是由yellow dog 这一发行版的开发者Terra Soft 研发,用python 写成,那时还叫作yup(yellow dog updater),后经杜克大学的Linux@Duke 开发团队进行改进,遂有此名。yum 能够交互和自动化地更新与管理 rpm 软件包,可以从指定的 yum 存储仓库自动下载 rpm 包并安装,能够自动处理依赖性关系。提供查找、安装、删除、更新等操做命令。python
能够列出软件包、总体更新软件包、个体更新软件包linux
yum check-update
例如:yum check-update 部分输出以下:web
能够单个软件包、多个、所有更新,若是更新的包的任何依赖项自己有更新可用,那么依赖的软件包也会被更新。算法
更新单个软件包docker
yum update package_name
相似的更新包组数据库
yum group update group_name
更新全部包及依赖项。vim
yum update
Yum使您可以对软件包执行完整的操做集,包括搜索软件包、查看有关软件包的信息、安装和删除。centos
yum search package_name1 package_name2 ...
yum list all
yum list installed
# 或列出指定名字的包
yum list installed *vim*
yum list available
列出系统上每一个启用的存储库的存储库ID、名称和包的数量缓存
yum repolist
列出更详细的存储库信息,存储库大小,存储库连接地址,存储库配置文件等服务器
yum repolist -v yum repoinfo
列出禁用和启用的存储库:yum repolist all,也能够针对启用状态和禁止状态进行过滤:yum repolist disabled、yum repolist enabled
包括显示软件包的大小、官网URL、描述、来源存储库、版本号。相似 rpm -q --info package_name 命令。
yum info package_name
显示软件包的其它信息
这个命令提供了额外的信息,包括包的校验和(算法用于生产,如sha - 256),在命令行上给出的命令被调用安装包(若是有的话),reason=user代表它是由用户安装,reason=dep意味着它被引入做为一个依赖项
yumdb info package_name
包组是服务于一个公共目的的包的集合,例如系统工具或声音和视频。安装包组将获取一组相关的包,从而大大节省了时间。yum组命令是一个顶级命令,它涵盖了在yum中做用于包组的全部操做。
smmary参数用于查看已安装组、可用组、可用环境组以及已安装和可用语言组的数量:
yum groups summary
列出存储库中全部包组
yum groups list
列出特定组中包含的包信息
等于yum groupinfo group_name
yum group info group_name
每一个包组都有一个名称和一个组ID (groupid)。列出全部包组的名称及其组id(显示在括号中)
安装包组,能够经过将包组的完整组名(不包含groupid部分)传递给组安装命令来安装包组。
yum group install "group name"
也能够经过groupid进行安装
yum group install groupid
移除包组
yum group remove "group name"
yum history命令查看yum事务的时间轴、发生的日期和时间、受影响的包的数量、这些事务是成功仍是停止,以及事务之间是否更改了RPM数据库。此外,此命令可用于撤消或重作某些事务。全部的历史数据都存储在/var/lib/yum/history/目录的历史数据库中。
查看yum的历史操做记录
yum history list all
也能够根据ID仅显示指定范围
yum history list start_id..end_id
查看某个id的详细信息,包括执行的命令、安装更新的软件包、执行时间等。
yum history info id
yum history重复或取消某个历史操做
重复执行指定的id,该命令将重复执行该id的命令
yum history redo id
取消某个历史id的,若是该id是执行安装软件包的命令,那么将remove掉该软件包
yum history undo id
将事务历史存储在单个SQLite数据库文件中。启动新的事务历史记录文件
yum history new
yum 的配置文件分为两部分:main 和 repository
/etc/yum.conf配置参数说明
提示确认操做,默认是0。若是是1,则当yum install package_name等命令时则不会提示确认操做。这个过程不用输入“y”确认安装。
cachedir
=directoryyum存储其缓存和数据库文件的目录。
yum生成的调试输出的详细信息。value是1到10之间的整数。设置更高的调试级别值将致使yum显示更详细的调试输出。debuglevel=2是默认值,而debuglevel=0禁用调试输出。
默认1表示开启,在更新包时考虑准确的体系结构。经过此设置,yum不会安装用于32位体系结构的包来更新已经安装在系统上的具备64位体系结构的包。
默认gpgcheck=1,在全部存储库中的全部包上启用GPG签名检查,包括本地包安装。启用gpgcheck后,将检查全部包的签名。在对应的.repo文件中为单个存储库设置gpgcheck=value将覆盖默认值(若是它位于/etc/yum. conf中)。
默认0,安装成功后,不要保留标题和包的缓存。1:成功安装后保留缓存。
默认/var/log/yum.log,日志输出保存位置。记录软件包更新、安装、移除等。
plugins=1全局启用全部yum插件。仍然能够经过在插件的配置文件中设置enabled=0来禁用特定的yum插件。
repository配置说明
在[repository]部分中,repository是唯一的存储库ID,如my_personal_repo(不容许使用空格),容许您定义单独的yum存储库。位置/etc/yum.repos.d/*
repo配置参数实例
[root@web ~]# cat /etc/yum.repos.d/CentOS-Base.repo [base] name=CentOS-$releasever enabled=1 failovermethod=priority baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7 [updates] name=CentOS-$releasever enabled=1 failovermethod=priority baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7 [extras] name=CentOS-$releasever enabled=1 failovermethod=priority baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/ gpgcheck=1
serverid 是用于区别各个不一样的repository,必须有一个独一无二的名称;
name 是对repository 的描述,支持像$releasever $basearch这样的变量;
baseurl 是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式是:
8 yum-config-manager添加yum仓库
yum-config-manager命令须要安装yum-utils软件包。
添加第三方yum源仓库
[root@abvi17j5 ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 已加载插件:fastestmirror adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo repo saved to /etc/yum.repos.d/docker-ce.repo
仅下载不安装:
yum install --downloadonly --downloaddir=/tmp lrzsz