Yellow Dog Updater Modified (YUM),我们创建了一个知识库,也配置了在RHEL5里的知识库的访问路径。我们将利用YUM的主要配置文件yum.conf(位于/etc)。我们还将通过采取一些基本YUM命令,了解其中的一部分。
对于YUM新手,我们来快速的定义并回顾一下历史。YUM是一个用于RPM系统软件包管理器(安装程序和卸载)。这是为更新机群量身订造的,而不必更新 每个具体的RPM。该软件位于知识库,并从repository获取正确的RPM包,不必手动查找并安装新的应用或更新。YUM的优点在于它的简单。你可 以使用一个命令来更新所有系统软件。遥想当年,RHEL4经常使用up2date作为其包管理,RHEL5使用基于版本3的YUM。 Upd2date实际上是作为RHEL5中围绕YUM而使用的。该产品是由Seth Vidal(现在红帽工作)和一群自愿程序员开发的,编入Python。现在版本3.2.22。
yum.conf
文件本身由两个部分组成。第一个是主要部分和第二部分是repository文件。你可以选择在这些文件中存放你的repository或单独存在名为 file.repo的文件里。您可以在一个配置文件里拥有不止一个repository文件,但只能有一个主要部分。下面是一个yum config文件的例子。
main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
tolerant=1
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
timeout=10
[myexamplerepo]
name=RHEL 5 $releasever - $basearch
baseurl=http://local/path/to/myyum/repository/
enabled=1
让我们介绍一些重要领域:
Cachedir:YUM存储缓存和数据库文件的目录。
Keepcache:有两个选择,0和1。 1通知YUM保持成功安装后的头和包缓存。默认值为1。
Tolerant:有两个选择,0和1。设定为1允许YUM成为命令行中的的容错。默认值为0。
Grpcheck:有两个选择,0和1。 1能启动GPG校验,提供了GPG套件签名检查所有repository。这包括本地包安装。
Metadata_expire:在几秒钟的时间内-元数据之后终止。
Timeout:一个将用于连接之前等待的时间。
Exactarch:有两个选择,0和1。 1告诉YUM只更新已安装的软件包架构。例如,如果启用该功能,你将无法安装i386包来更新i686包。
Obsoletes:此更新只影响YUM进程逻辑。它的作用是平均分配升级。
repository部分拥有在包安装、更新和附属安装期间查找包所需的信息。。强制性字段说明如下:
ID:一个独特的字符串,这是repository标识符。
Name:字符串,描述repository。
BaseURL:宿主repository的真实 url。
一些可选的领域包括:gpgcheck、gpgkey、exclude和 include。Exclude 和 include字段类似文件的主要部分,但只适用于一个特定的repository。
如果你不喜欢手动编辑配置文件,可以更好地使用一些图形GUI界面软件,帮助您配置YUM,部署当前正在运行的YUM基础系统。如果你要手动编辑这些文件,请务必先与它们在测试环境进行良好的备份。它只是需要5秒钟发出以下命令:
# cp /etc/yum.conf /etc/yum.conf.old
请手动编辑此文件之前使用此命令。
yummy命令
在这部分系统中,YUM有很多命令。尝试学习一些常用的重要命令。在本节中我们将讨论其中的某些命令。
# yum list
这列出了系统中安装的所有repository里的所有包。有一些备选方案,一种选择是:
# yum list installed
这类似于运行rpm –qa,打破了所有已安装的软件包列表。默认情况下不带任何选项YUM名单将列出所有repository的所有软件包,和所有您的系统上安装的软件包。
(注:“"yum list all" 和 "yum list"输出的信息相同。)
# yum info
显示任何所安装或可用包的信息。
# yum search
允许您从可用元数据搜索关于包的信息。
# yum clean
yum clean命令允许您清除在YUM在其正常运营期间使用的元数据和包的缓存文件。这将释放大量的磁盘空间。
# yum groupinfo groupname
这为每个组,包括描述、强制、默认和可选包提供详细信息。
我们侧重于在RHEL上使用YUM,但也需要注意到,SLES10.1已增加了对YaST里 YUM repository的支持。许多其他版本也提供YUM支持,所以如果YUM真的对你很重要,你应该仔细检查您的文档。最后,YUM有一个命令行实用程 序。如果你喜欢GUI软件,也有几个图形用户界面与YUM交互,包括pup,pirut(作为版本5的默认Fedora GUI)和Yum Extender。YUM需要花一些时间来学习。像任何其他新的软件,花更多的时间学习,将更有利于你的应用。