使用 yum
工具改变系统中的软件配置,有四种选择:
-
从仓库安装新软件
-
从单独的软件包文件安装新软件
-
更新您的系统中现有的软件
-
从您的系统中移除不需要的软件
yum
命令使用仓库作为软件包来源。
使用 yum
时,应指定一个操作,以及一个或多个软件包/软件组。
对于每个操作,yum
都要从已配置的仓库中下载最新的软件包信息。如果您的网络连接比较慢,yum
会用数秒钟来下载仓库的索引以及软件包的文件头。
为得到所需的结果,yum
工具搜索这些数据文件,产生最好的动作集合,然后显示待处理的事务,您可以批准是否继续。事务可能会包含安装,更新或删除额外的软件,以此来满足软件依赖关系。
这个范例是安装 tsclient
时的事务:
============================================================================= Package Arch Version Repository Size ============================================================================= Installing: tsclient i386 0.132-6 base 247 k Installing for dependencies: rdesktop i386 1.4.0-2 base 107 k Transaction Summary ============================================================================= Install 2 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 355 k Is this ok [y/N]:
yum
事务报告的格式
yum
不会下载或改变任何软件。
yum
工具只显示和使用软件包的最新版本,除非您指定一个旧版本。
yum
工具支持导入仓库公钥,如果它没有预装在 rpm
钥匙环中的话。
这是公钥导入的一个例子:
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2 public key not available for tsclient-0.132-6.i386.rpm Retrieving GPG key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora Importing GPG key 0x4F2A6FD2 "Fedora Project <fedora@redhat.com>" Is this ok [y/N]:
yum
公钥导入的格式
检查这个公钥,然后按下 y 来导入它,认可它的效力。如果您按下 N 或 Enter (回车),yum
停止,不安装任何软件包。
为保证下载到的软件包是真实的,yum
用提供者的公钥校验每个软件包的数字签名。当事务需要的所有软件包都已成功下载并校验后,yum
将它们应用到您的系统中。
每个完成的事务会在日志文件 /var/log/yum.log
中记录受影响的软件包。您只能以 root
权限读取它。
下载被缓存
yum
工具保留已下载的数据文件和软件包以复用。如果需要,您可以从 /var/cache/yum/
下的仓库缓存目录中,将软件包复制出来,用于其他地方。缓存中的软件包即使被删除,也不会影响到您的系统中已经安装的软件。
使用 yum
安装新软件
要安装软件 tsclient
,输入命令:
su -c 'yum install tsclient'
当提示时,输入 root
帐号的密码。
要安装软件组 MySQL Database
,输入命令:
su -c 'yum groupinstall "MySQL Database"'
root
帐号的密码。
当您安装一项服务的时候,Fedora 不会激活或启动它。要配置一项新服务随系统启动而运行,选择菜单中的 Desktop → System Settings → Server Settings → Services ,或者使用命令行工具 chkconfig
和 service
。
新版本软件需要重新载入
如果您更新某个软件时,它正在被使用,那么旧版本仍然有效,直到您重新启动应用程序或服务。内核的更新必须到您重新启动系统时才可生效。
MySQL Database
中的所有软件,输入命令:
su -c 'yum groupupdate "MySQL Database"'当提示时,输入
root
帐号的密码。
要更新您的 Fedora 系统中的所有软件,使用 第 6 节 “使用 yum
更新您的系统” 中提到的命令。
使用 yum
移除软件
要移除软件,yum
在您的系统中检测指定被移除的软件,以及任何依赖于它的软件。移除软件的事务将移除这一软件及所有依赖于它的软件。
要移除 tsclient
软件,使用命令:
su -c 'yum remove tsclient'当提示时,输入
root
帐号的密码。
要移除软件组 MySQL Database
中的所有软件,使用命令:
su -c 'yum groupremove "MySQL Database"'当提示时,输入
root
帐号的密码。
移除过程会保留用户数据,但是在某些时候会移除配置文件。如果某个软件的移除不包括配置文件,而您在后面又重安装了这一软件,那么它可能会重用旧的配置文件。