yum命令使用说明
1、命令概述
yum是Yellowdog update Modified的简称。yum的宗旨是自动化的升级、安装/移除rpm安装包(也就是说yum这个命令它的操作对象是RPM包),收集rmp的相关信息,检查依赖性,并提示用户解决。yum的关键之处是要有可靠的repository,顾名思义这就是软件的仓库,它可以是http或者ftp站点,也可以是本地的软件池,但是必须包含rpm的header,rmp的header包括了rmp的各种信息,包括描述、功能、提供的文件、依赖性等,正是收集了这些信息,才能自动化的完成余下的任务。yum本身就是运行在linux上的自动管理安装包的系统。yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了Linux 用户一直头痛的dependencies 的问题。这一点上,yum 和apt 相同。apt 原为debian 的deb 类型软件管理所使用,但是现在也能用到RedHat 门下的rpm 了。
注:linux下的RPM的全称是“RedHat Package Manager”,最早是Red Hat公司开发的,后来在CentOS、Fedora、SUSE都用它。而rpm包则是软件编译完成后按照RPM机制打包起来的一个文件,可以用rpm命令安装的一个软件安装包,它省去了Linux软件安装中编译的步骤,安装成功后软件就可以用了。RPM包的特点是:1.实现已经编译好;2.安装方便;3.安装过程中要求环境一致;4.反安装时要从最上层开始。RPM包的名称规则示例:ttpd-manual- 2.0.40-21.i386.rpm,ttp-manual是软件包的名称,2是主版本号;0是次版本号;40是次版本号;21是编译的次数;i386是适合的平台;.rpm说明这是一个RPM包。
2、yum的特点
2.1.可以同时配置多个资源库(repository)
2.2.简洁的配置文件(一般配置文件是/etc/yum.conf)
2.3.自动解决增加或者删除rpm包时遇到的依赖问题
2.4.保持与rpm的数据库一致
3、yum的配置文件
3.1 yum的配置文件,绝对路径:/etc/yum.conf。yum的一切配置信息都存储在这个文件中,这是yum系统中最重要的内容。
3.2 yum.conf分为main和repository两部分,默认情况下文件内只有main部分;每一个yum.conf都只能有一个main部分。repository 部分定义了每个源/服务器的具体配置,可以有一到多个,位于 /etc/yum.repo.d 目录下的各文件中。
3.3 查看yum.conf文件内容
1 [root@localhost ~]# cat /etc/yum.conf 2 [main] 3 cachedir=/var/cache/yum/$basearch/$releasever 4 keepcache=0 5 debuglevel=2 6 logfile=/var/log/yum.log 7 exactarch=1 8 obsoletes=1 9 gpgcheck=1 10 plugins=1 11 installonly_limit=5 12 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum 13 distroverpkg=centos-release
1.cachedir:此项为yum下载的RPM包的缓存目录,yum在此存储下载的rpm包和数据库
2.keepcache:缓存是否保存,1表示安装后保留软件包,0表示安装后删除软件包
3.debuglevel:出错日志级别,级别为0-10,默认为2(只保留安装和删除记录)
4.logfile:存放系统更新软件的记录,用户可以在该配置项配置的文件中检查自己在过去的日子都做了哪些更新
5.exactarch:有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用1686的包来升级。
6.obsoletes:这是一个update的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包。
7.gpgcheck:是否检查GPG(GNU Private Guard),一种密钥方式签名。
8.plugins:否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件。
9.installonly_limit:允许保留多少个内核包。
10.bugtracker_url:追踪bug路径
11.distroverpkg:指定一个软件包,yum会根据这个包判断你的发行版本,默认是RedHat-release,也可以是安装的任何针对自己发行版的rpm包。
12.pkgpolicy: 包的策略。一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repository中同时存 在,yum应该安装哪一个,如果是newest,则yum会安装最新的那个版本。如果是last,则yum会将服务器id以字母表排序,并选择最后的那个服务器上的软件安装。
13.tolerent:也有1和0两个选项,表示yum是否容忍命令行发生与软件包有关的错误,比如你要安装1,2,3三个包,而其中3此前已经安装了,如果你设为1,则yum不会出现错误信息。默认是0。
14.retries:网络连接发生错误后的重试次数,如果设为0,则会无限重试。
15.exclude:屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。
16.reposdir:该选项用户指定 .repo 文件的绝对路径。.repo 文件包含软件仓库的信息 (作用与 /etc/yum.conf 文件中的 [repository] 片段相同)。 reposdir=[包含 .repo 文件的目录的绝对路径]
4、命令语法
yum【选项】 【参数】 【软件包名】
5、命令选项
-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0-10);
-e:设置错误等级(0-10);
-R:设置yum处理一个命令的最大等待时间;
-C:完全从缓存中运行,而不去下载或者更新任何头文件。
6、命令参数
install:安装rpm软件包;
update:更新rpm软件包;
check-update:检查是否有可用的更新rpm软件包;
remove:删除指定的rpm软件包;
list:显示软件包的信息;
search:检查软件包的信息;
info:显示指定的rpm软件包的描述信息和概要信息;
clean:清理yum过期的缓存;
shell:进入yum的shell提示符;
resolvedep:显示rpm软件包的依赖关系;
localinstall:安装本地的rpm软件包;
localupdate:显示本地rpm软件包进行更新;
deplist:显示rpm软件包的所有依赖关系。
7、命令示例
7.1安装软件
yum install package1 #安装指定的软件包 package1
yum groupinsall group1 #安装程序组 group1,一般用双引号引起来“group1”
7.2更新和升级
yum update #更新软件、系统版本和内核
yum upgrade #更新软件
yum update kernel #升级内核
yum update package1 #更新指定软件包 package1
yum groupupdate group1 #升级指定程序组g roup1
yum upgrade package1 #升级指定软件包 package1
7.3查找和查看
yum search ifconfg #查找 ifconfig 软件包名称
yum provides ifconfig #查找 ifconfig 来自于那个软件包
yum list #查看所有已经安装和可以安装的软件包
yum list package1 #查看程序包 package1 的安装情况(是否安装),支持正则通配符的查询 ? *,yum list pack?
yum grouplist #查看可安装的程序组
yum info package1 #查看安装包 package1 的详细信息
yum groupinfo group1 #查看程序组 group1 的详细信息
yum deplist package1 #查看程序 package1 的依赖关系
yum provides package1 #查看软件包 package1 提供哪些文件
yum check-update #查看可更新的程序
yum list updates #查看可更新的软件包
yum list installed #查看已安装的软件包
yum list available #查看可安装的软件包
yum list extras #查看已安装,但是不在Yum Repository 仓库內的软件包
yum repolist #查看yum仓库(可用)
yum repolist all #查看yum所有仓库
yum repolist enabled #查看yum可用仓库
yum repolist disabled #查看yum不可用仓库
yum list recent #查看仓库中新增加的软件包
yum history #查看yum历史记录
7.4删除软件程序
yum remove package1 #删除程序包package1
yum erase package1 #删除程序包package1
yum groupremove group1 #删除程序组group1
7.5缓存相关
yum clean all #清除所有缓存
yum makecache #生成本地缓存
yum clean packages #清除缓存目录下的 packages 软件包
yum clean headers #清除缓存目录下的 headers
yum clean oldheaders #清除缓存目录下旧的 headers
yum clean plugins #清除插件缓存