yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。 yum的命令形式一般是如下:yum [options] [command] [package ...] 其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。 [CentOS7-base] #源名称,必填 name=CentOS-$releasever-base #源描述,可以不填,但是会有提示 baseurl=ftp:// #ftp服务器 file:///misc/cd/ #本地的光盘文件,可以有多个地址。必填 https://mirrors.aliyun.com/centos/7.3.1611/os/x86_64/ gpgcheck=1 #是否开启校验,在yum.conf中已经定义它默认值为1 enabled=1 #是否禁用此yum源,默认为1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #如果开启yum源包校验,则需要导入RPM公钥,此处只是在系统没有导入rpm公钥时候进行安装 #这里相当于rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
[aliyun_epel] #这是Redhat的扩展包 name=ailiyun_yum_epel baseurl=https://mirrors.aliyun.com/epel/7/x86_64/ gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-7 gpgcheck=1 1.使用yum安装和卸载软件 安装的命令是,yum install ~,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装; 删除的命令是,yum remove ~,同安装一样,yum也会查询数据库,给出解决依赖关系的提示。1.用YUM安装软件包命令:yum install ~ 2.用YUM删除软件包命令:yum remove ~ 2.用yum查询想安装的软件 我们常会碰到这样的情况,想安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时yum的查询功能就起作用了。 我们可以用yum search keyword这样的命令来进行搜索,比如我们要则安装一个InstantMessenger,但又不知到底有哪些,这时不妨用yum search messenger这样的指令进行搜索,yum会搜索所有可用rpm的描述,列出所有描述中和messeger有关的rpm包,于是我们可能得到 gaim,kopete等等,并从中选择。 有时我们还会碰到安装了一个包,但又不知道其用途,我们可以用yuminfo packagename这个指令来获取信息。 1.使用YUM查找软件包 命令:yum search ~ 2.列出所有可安装的软件包 命令:yum list 3.列出所有可更新的软件包 命令:yum list updates 4.列出所有已安装的软件包 命令:yum list installed 5.列出所有已安装但不在Yum Repository內的软件包 命令:yum list extras 6.列出所指定软件包 命令:yum list ~ 7.使用YUM获取软件包信息 命令:yum info ~ 8.列出所有软件包的信息 命令:yum info 9.列出所有可更新的软件包信息 命令:yum info updates 10.列出所有已安裝的软件包信息 命令:yum info installed 11.列出所有已安裝但不在Yum Repository內的软件包信息 命令:yum info extras 12.列出软件包提供哪些文件 命令:yum provides~ 3.清除YUM缓存 yum会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yumclean headers清除header,yum cleanpackages清除下载的rpm包,yum cleanall 清除所有。 1.清除缓存目录(/var/cache/yum)下的软件包 命令:yum clean packages 2.清除缓存目录(/var/cache/yum)下的 headers 命令:yum clean headers 3.清除缓存目录(/var/cache/yum)下旧的 headers 命令:yum clean oldheaders 4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers 命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 4.yum命令工具使用举例 yum update 升级系统 yum install ~ 安装指定软件包 yum update ~ 升级指定软件包 yum remove ~ 卸载指定软件 yum group list 查看系统中已经安装的和可用的软件组,可用的可以安装 yum group install~ 安装上一个命令显示的可用的软件组中的一个 yum group update ~更新指定软件组的软件包 yum group remove ~卸载指定软件组中的软件包 yum dep list ~ 查询指定软件包的依赖关系 yum list yum* 列出所有以yum开头的软件包 yum local install ~从硬盘安装rpm包并使用yum解决依赖 5.yum高级管理应用技巧 技巧2:加快你的yum的速度.使用yum的扩展插件yum-fastestmirror,个人认为这个插件非常有效,速度真的是明显提高, #yum -y install yum-fastestmirror 注意,在CentOS 4上,名字叫yum-plugin-fastestmirror
技巧3:rpm查找.还是有rpm包找不到怎么办,到下面这个网站。基本上都收集全了,你可以用高级查找看看.http://rpm.pbone.net/
技巧4:通过yum工具下载RPM源码包。前提是有安装yum-utils这个软件包.如果有安装的话。 #yum downloader --source ; RPM源码包 #yum downloader --source vsftpd 当然,没有源包的话,还要加入一个源 [linux-src] name=Centos$releasever-$basearch-Source baseurl=http://mirrors.163.com/centos/$releasever/os/SRPMS/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
技巧5:软件组安装有时我们安装完系统,管理有一类软件没有安装,比如用于开发的开发包,我们可以用软件包来安装。 #yum group list这样可以列出所有的软件包 比如我们要安装开发有关的包 #yum group install "Development Libraries" #yum group install "Development Tools"
比如我们要安装中方支持 #yum group install "Chinese Support" #yum deplist package1 #查看程序package1依赖情况
以上所有命令参数的使用都可以用man来查看: [root@F7常用文档]$ man yum yum -y install 包名(支持*):自动选择y,全自动 yum install 包名(支持*):手动选择y or n yum remove 包名(不支持*) rpm -ivh 包名(支持*):安装rpm包 rpm -e 包名(不支持*):卸载rpm包 升级内核:#yum install kernel-headers kernel-devel