现在的位置: 首页 > 综合 > 正文

RPM包管理

2014年08月29日 ⁄ 综合 ⁄ 共 1657字 ⁄ 字号 评论关闭
RPM Package Manager
RPM软件包格式是Red Hat公司首先提出并使用的,目前广泛应用在各类Linux发行版本中。
RPM建立统一的数据库文件,详细记录软件包安装、卸载等变化信息,能够自动分析软件包依赖关系 。



软件素材参考:http://rpmfind.net
一般命名格式:

其中硬件平台通常为“i386”、“i586”、“i686”或“noarch”(不区分硬件架构)等。
有些软件包的文件名中还会增加所适用的操作系统信息,例如“wget-1.10.2-7.el5.i386.rpm”。


查询已安装的RPM软件信息
格式:rpm  -q[子选项]  [软件名]
用法:结合不同的子选项 完成不同查询
 -qa:查看系统中已安装的所有RPM软件包列表
 -qi:查看指定软件的详细信息
 -ql:查询指定软件包所安装的目录、文件列表 
 -qc:仅显示指定软件包安装的配置文件
 -qd:仅显示指定软件包安装的文档文件

查询文件或目录是由哪个软件包安装的
格式:rpm  -qf  文件或目录名


PS:1、使用“-q”选项时实际上调用了“/usr/bin/rpmquery”程序完成查询工作

2、包查询主要包括两种情况:

    1)查询系统中已经安装的软件包信息;    2)查询尚未安装的RPM包文件的信息

对于“-qa”查询选项,命令参数(即软件包名)是非必须的;一般查询时,软件名不需要指定版本号

查询未安装的RPM包文件
格式:rpm  -qp[子选项]  RPM包文件
用法:结合不同的子选项 完成不同查询
-qpi:通过.rpm包文件查看该软件的详细信息
-qpl:查看.rpm安装包内所包含的目录、文件列表
-qpc:查看.rpm安装包内包含的配置文件列表
-qpd:查看.rpm安装包内包含的文档文件列表

安装或升级RPM软件
格式:rpm  [选项]  RPM包文件...
用法:不同选项适用于不同情况
-i:安装一个新的rpm软件包
-U:升级某个rpm软件,若原本未装,则进行安装
-F:更新某个rpm软件,若原本未装,则放弃安装

如果使用rpm安装软件的时候,出现warning:……NOKEY……”的警告信息是由于没有导入RedHat提供的公钥所致,但并不影响安装效果,可以忽略,如果需要导入公钥文件,可以参考如下步骤(以后从RHEL5光盘中安装软件时,就不会再出现警告提示了):

[root@localhost ~]#cd /media/cdrom

[root@localhostcdrom]#rpm
--import RPM-GPG-KEY-
redhat-release



卸载指定的RPM软件
格式:rpm  -e 
软件名
辅助选项
--force:强制安装所指定的rpm软件包
--nodeps:安装、升级或卸载软件时,忽略依赖关系
eg:rpm -qa|grep yum |xargs rpm -e --nodeps
-h:以“#”号显示安装的进度
-v:显示安装过程中的详细信息 


维护RPM数据库


RPM数据库:用于记录在Linux系统中安装、卸载、升级应用程序的相关信息,由RPM包管理系统自动完成维护,一般不需要用户干预
当RPM数据库发生损坏(误删文件、非法关机、病毒破坏等导致),且Linux系统无法自动完成修复时,将导致无法使用rpm命令正常地安装、卸载及查询软件包,这时可以使用—rebuildbd或—initdb重建RPM数据库
重建RPM数据库

[root@localhost~]# rpm --rebuilddb

 或

[root@localhost~]# rpm --initdb


在Linux/Unix应用领域,相当一部分软件厂商会对发布的软件包进行数字签名,以确保软件的完整性、合法性。对于用户来说,可以利用软件官方提供的公钥文件,自动对下载的软件包进行验证,如果在安装软件时出现验证失败的提示,则表示该软件包可能已经被非法篡改


导入验证公钥

[root@localhost~]# rpm
--import
/media/cdrom/RPM-GPG-KEY-redhat-release





抱歉!评论已关闭.