yum介绍
Yellow dogUpdater Modified,是一个在RedHat及CentOS中的Shell前端软件包管理器。
基于RPM包管理,能够从制定的服务器自动下载RPM包并安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。
yum提供了查找、安装、删除某一个、一组省直全部软件包的命令。
yum使用
通常yum的一切信息都存储在一个叫yum.repos.d的目录下的文件中,通常位于/etc/yum.repos.d目录下。
在这个目录中,都是.repo结尾的,repo文件是yum源的配置文件。
查看目录下的CentOS-Base.repo文件:
[extras]
yum的ID,必须唯一的,本地有多个yum源的时候,这里也必须是唯一的。name
具体的yum源名称,相当于对它的描述信息。mirrorlist
是镜像服务器地址列表,里面有很多的服务器地址。baseurl
和mirrorlist一样,都是指向yum源的地址,不同的是包含地址的多少,一帮只写一个地址,直接用baseurl。gpgcheck
0=取消验证,1=使用公钥检验rpm的正确性。gpgkey
效验的key地址,如果gpgcheck=0的话,那么gpgkey就可以不用填写。
通常yum的配置会有一个yum.conf文件,这个文件通常位于/etc目录下。
查看目录下的yum.conf文件:
cachedir
yum缓存的目录,yum在此存储下载的rpm包和数据库,一般情况下路径是/var/cache/yum/ b a s e a r c h / basearch/ basearch/releaseverkeepcache
是否保留缓存内容,0=安装后删除软件包,1=安装后保留软件包debuglevel
除错级别,0-10,默认是2,只记录安装和删除记录。logfile
存放系统更新软件的日志的目录。可以根据路径去查询自己在过期做了哪些更新。pkgpolicy
包的策略,一共有两个选项,newest和last,这个的作用是如果设置了多个源,而同一个软件在不通的源中同时存在,yum应该选哪一个。如果是newest,则会安装最新的那个版本。如果是last,这回将服务器ID以字母排序,并选择最后的那个服务器上的软件。distroverpkg
指定一个软件包,yum会根据这个包判断发行版本,默认是RedHat-release,也可以是CentOS-release。tolerant
表示yum是否容忍命令行发生与软件包有关的错误,有1和0两个选项。exactarch
代表是否只升级和你安装软件包CPU体系一致的包,有1和0两个选项,1为是,0为否。retries
网络链接发生错误时的重试次数,如果设置为0,则会无限重试。
yum的命令格式
yum <options> <command> <package...>
options是选项,常用的:
- -y 如果有需要按y/n的时候,默认自动选y。
- -q 安静模式,不显示安装的过程。
- -h 显示帮助信息。
- -c 指定配置文件。
- -v 详细模式。
- -d 设置调试等级,从0到10。
- -e 设置错误等级,从0到10。
- -R 设置yum处理一个命令的最大等待时间。
- -C 完全从缓存中运行,而不去下载或者更新任何头文件。
- -installroot=/path/path 将该软件安装在/path/path,而不使用默认路径.
command是要进行的操作,常用的:
- install 安装rpm软件包。
- 全部安装
yum install
- 安装指定的安装包package
yum install package
- 全部安装
- groupinstall 安装程序组
- 安装程序组group
yum groupinsatall group
- 安装程序组group
- update 更新rpm软件包。
- 全部更新
yum update
- 更新制定的程序包package
yum update package
- 全部更新
- groupupdate 更新程序组
- 更新程序组group
yum groupdate group
- 更新程序组group
- check-update 检查是否有可用的更新rpm软件包。
- 检查可更新的程序
yum check-update
- 检查可更新的程序
- upgrade 大规模的版本升级,与update不同,连旧的淘汰的包也升级
- 全部更新
yum upgrade
- 全部更新
- remove 删除制定的rpm软件包。
- 删除程序包package
yum remove package
- 删除程序包package
- groupremove 删除程序组
- 删除程序组group
yum groupremove group
- 删除程序组group
- list 列出资源库中所有可以安装或更新的rpm包。
- 显示所有已经安装和可以安装的程序包
yum list
- 显示指定package安装包的安装情况
yum list package
- 显示资源库中所有可以更新的rpm包
yum list updates
- 显示已经安装的所有rpm包
yum list installed
- 显示已经安装的,但不包括在资源库中的rpm包
yum list extras
- 显示所有已经安装和可以安装的程序包
- search 搜索软件包的信息;
- 搜索匹配package字符的rpm包,包括名称、描述
yum search package
- 搜索匹配package字符的rpm包,包括名称、描述
- info 显示制定的rpm软件包的描述信息和概要信息;
- 显示资源库中所有可以安装或更新的rpm包的信息
yum info
- 显示安装包package的信息
yum info package
- 显示pack开头的所有包的信息
yum info pack*
- 显示资源库中所有可以更新的rpm包的信息
yum info updates
- 显示所有已经安装rpm包的信息
yum info installed
- 显示已经安装的,但不包括在资源库中的rpm包的信息
yum info extras
- 显示资源库中所有可以安装或更新的rpm包的信息
- clean 清理yum过期的缓存。
- 清除缓存目录下的软件包
yum clean packages
- 清除缓存目录下的headers
yum clean headers
- 清除缓存目录下旧的headers
yum clean headers
- 清楚缓存中的所有文件
yum clean all
- 清除缓存目录下的软件包
- shell 进入yum的shell提示符。
- resolvedep 显示rpm软件包的依赖关系。
- localinstall 安装本地的rpm软件包。
- localupdate 本地的rpm软件包进行更新。
- deplist 显示rpm软件包的所有依赖关系。
- 查看程序package的依赖情况
yum deplist package
- 查看程序package的依赖情况
- alias 列出或创建命令别名。
- autoremove 删除所有原先因为依赖关系安装的不需要的软件包。
其他处理代码
- 下载安装包到本地不安装
yum install --downloadonly 软件名1 软件名2 软件名…… --downloaddir=存放的目录
下载完成后,可打开目录,然后执行rpm -Uvh --force --nodeps *.rpm
,将目录中的所有包进行一次性安装。