快速业务通道

每日一问:如何安装和升级一个RPM软件包?

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-22
如何安装和升级一个RPM软件包?
解决方法: 为了安装一个RPM包,你有希望安装的软件的RPM包.你可以从一个网站来下载相应的RPM包,当然红帽网络提供在我们发行版中所有的软件包.有两个主要的选项用来安装和升级RPM软件包: -i 用于安装一个新的软件包.经常用于内核的升级和安装
-U 用于升级一个RPM包,如果这个软件包在你系统的RPM数据库中不存在,它将安装这个软件包. 你可以在命令行上输入man rpm来得到详细的使用方法和选项的说明.这里是关于-i和-U选项的说明. INSTALL AND UPGRADE OPTIONS
The general form of an rpm install command is
rpm {-i|--install} [install-options] PACKAGE_FILE ...
This installs a new package.
The general form of an rpm upgrade command is
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
This install the package or upgrades the package currently installed to a newer version. This is the same as install, except all other version(s) of the package are removed after the new package is installed. 注:这些例子假设这些软件包在你系统的一个目录中.下面的RPM命令在你存放新的RPM包的当前工作路径下执行. 我们使用-i选项来安装一个RPM软件包.正如我们上面提到的,升级内核用-i来安装,系统会同时有多个内核,防止新内核无法启动时导致无法进入系统,万一当新核心不能启动的时候,你可以选择启动原有的核心. 在这个例子中,我们使用ls命令检查新的RPM软件包的名字.然后查询RPM数据库检查哪个核心的软件包已经安装了.在查询的时候不需要指定版本号,直接使用:rpm -q <软件包的名字>.我们可以使用下面的命令来安装一个RPM包:rpm -ivh <软件包的名字>. 其中-v选项表示详细输出,-h选项显示井号表示,来代表安装的进展情况.,我们可以运行另一个RPM查询命令来验证这个软件包是否存在. # ls
kernel-2.4.21-15.0.3.EL.i686.rpm
kernel-smp-2.4.21-15.0.3.EL.i686.rpm # rpm -q kernel; rpm -q kernel-smp
kernel-2.4.21-4.0.1.EL
kernel-2.4.21-15.0.2.EL
kernel-smp-2.4.21-4.0.1.EL
kernel-smp-2.4.21-15.0.2.EL # rpm -ivh kernel-2.4.21-15.0.3.EL.i686.rpm
Preparing... ########################################### [100%]
1:kernel ########################################### [100%]
# rpm -ivh kernel-smp-2.4.21-15.0.3.EL.i686.rpm
Preparing... ########################################### [100%]
1:kernel-smp ########################################### [100%] # rpm -q kernel; rpm -q kernel-smp
kernel-2.4.21-4.0.1.EL
kernel-2.4.21-15.0.2.EL
kernel-2.4.21-15.0.3.EL
kernel-smp-2.4.21-4.0.1.EL
kernel-smp-2.4.21-15.0.2.EL
kernel-smp-2.4.21-15.0.3.EL
我们可以使用-U选项来升级一个RPM软件包.在这个例子中,我们使用ls命令来检验新的软件包的名字.然后运行查询命令rpm -q <软件包>来检查这个将要安装的软件报是否存在在RPM数据库中.使用rpm -Uvh <软件包>来升级RPM包. 其中-v选项表示详细输出,-h选项显示井号表示,来代表安装的进展情况. ,我们可以运行另一个RPM查询命令来验证这个软件包是否存在. # ls
httpd-2.0.46-32.ent.3.i386.rpm
mod_ssl-2.0.46-32.ent.3.i386.rpm
|# rpm -q httpd; rpm -q mod_ssl
httpd-2.0.46-32.ent
mod_ssl-2.0.46-32.ent # rpm -Uvh httpd-2.0.46-32.ent.3.i386.rpm mod_ssl-2.0.46-32.ent.3.i386.rpm Preparing... ########################################### [100%]
1:httpd ########################################### [ 50%]
2:mod_ssl ########################################### [100%] # rpm -q httpd; rpm -q mod_ssl
httpd-2.0.46-32.ent.3
mod_ssl-2.0.46-32.ent.3
注:依赖关系httpd和mod_ssl需要同时安装.否则你就会得到下面的错误: # rpm -Uvh httpd-2.0.46-32.ent.3.i386.rpm
error: Failed dependencies:
httpd = 2.0.46-32.ent is needed by (installed) mod_ssl-2.0.46-32.ent
注:你如果已经通过红帽网络注册了你的机器,你可以使用up2date来安装一个新的软件包,这些软件包位于红帽网络中,可以实现自动下载并安装.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号