部分参考:http://yuanshuai.blog.51cto.com/10539781/1746177


rpm(redhat package manager),是红帽公司出的一个包管理工具。


rpm包管理器通过建立统一的文件数据库,对于在linux系统中安装、卸载、升级各种.rpm软件包进行详细的记录,并能够自动分析软件包之间的依赖关系。保持各应用程序在一个协调有序的整体环境中运行。


undisks-1.0.1-4.el6.i686.rpm

由减号分割的分别为:

undisks :包名

1.0.1 :版本号,主版本号.次版本号.修正版本号

4.el6 :系统平台

i686 :多少位的操作系统,i686是32位,x86是64位。


语法:rpm [参数][*.rpm]


一,查询RPM软件包信息

1,查询已安装的RPM软件包信息(以安装的)

  • -q :查询已知软件包是否已经安装

  • -qa:显示 当前系统中以rpm方式安装的所有软件列表

  • -qi:查看指定软件包的名称、版本 、许可协议、用途描述等

  • -ql :显示指定软件包在当前系统中安装的所有目录

  • -qf:查看指定的文件或目录是由哪个软件包所安装的(绝对路径)

rpm -qa 包名   //查看系统中是否有该rpm包,包名不能省写,省写查询不到。

rpm -qa | grep vim     //省写的包名,通过这种方式查询。



二,查询RPM包文件中的信息(未安装的

  • -qpi:查看指定软件包的名称、版本、许可协议、用途描述

  • -qpl:查看指定软件包的安装目录、文件列表

    注意:以上两个均已软件包文件的路径作为参数



三,安装、升级、卸载RPM软件包

  • -i:在当前系统中安装一个新的rpm软件包

  • -e:卸载指定名称的软件包

  • -U:检查并升级指定软件包,软件包若未安装,会自动安装该软件包

  • -F:检查并更新指定软件包,软件包若未安装,则放弃安装

  • --force:强制安装指定软件包

  • --nodeps:强制卸载指定软件包

  • -h:在安装或升级时,以“#”符号显示进度

  • -v:显示软件包安装过程中的详细信息


常用搭配:

安装rmp包 

 rmp -ivh *.rmp     //相依赖的rmp包需要 同时安装

卸载一个包:

 rmp -e 包名       //只需要跟包名即可
升级rpm包

 rpm -Uvh *.rmp


四,维护RPM数据库

1,重建RPM数据库

使用命令: rpm --rebuilddb 或 rpm --initdb


2,导入公钥

使用命令: rpm --import 公钥文件路径