RPM(RedHat PackageManager,红帽子软件包管理器)用于软件包的安装、查询、升级、校验、卸载,以及生成.rpm格式的软件包。RPM使用数据库的方式来记录已经安装的软件包信息,数据库存储在目录/var/lib/rpm中。
 
格式:
rpm 选项[软件名|软件包名]
参数:
-q  #软件名  查看指定的软件是否安装
-qa #查看系统内容已经安装了那些rpm包
-ql #软件名 查看软件包里文件都安装的了系统的什么目录下
-qc #软件名 查看软件包里的配置文件都安装到的什么目录下
-qf #文件名 查看文件由那个软件包安装
-i  #在系统中安装软件
-U  #在系统中升级软件
-e  #在系统中卸载软件
-h  #用 #(hash) 符显示 rpm 安装过程
-v  #详述安装过程
-a  #查询所有已安装的软件包
-f  #查询 文件所属软件包
-l  #显示软件包中的文件列表
-d  #显示被标注为文档的文件列表
-c  #显示被标注为配置文件的文件列表
-p  #表明对 RPM 包进行查询,通常和其它参数同时使用,如:
-qlp  #查询某个 RPM 包中的所有文件列表
-qip  #查询某个 RPM 包的内容信息
--excludedocs  #不安装软件包的文档文件
--prefix PATH  #将软件包安装到指定目录
--test  #只对安装进行测试,并不实际安装(通常用来看下需要的依赖项)
--replace[pkgs|files]  #当出现冲突时或想强制覆盖时可以使用
--nodeps  #不考虑依赖关系,强制安装
--force   #强制安装软件包
RHEL5中安装光盘中的包路径说明:
Se
文件
rver 提供服务的软件包
VT 提供虚拟化技术的软件
Cluster 提供集群功能的软件包
ClusterStorage  提供集群和存储功能的软件包
p_w_picpaths   提供镜像文件和引导文件
isolinux  提供镜像文件和引导
1、安装软件 
rpm -ivh package.rpm
2、强制安装(忽略依赖)
   RPM 中的默认安装规则是不允许同一个包多次安装的,也不允许降级安装。使用 --force 辅助参数将不考虑以上因素,强制安装 RPM 包。但是,--force 无法强制安装一个不满足系统依赖性关系的包 ( 此时需要用到 --nodeps 参数 ) 。
    rpm -ivh --nodeps package.rpm
  rpm -ivh --force package.rpm
3、远程安装RPM
   rpm -Uvh ftp://user:pass@ftpserver/package.rpm
4、重新安装
   当要安装的软件包的某些文件已经在安装其他软件包时安装过了时,可以通过 --replacefiles参数来替换属于其他软件包的文件,如果安装RPM软件包发生冲突时,可以通过 --replacepkgs参数强制重新安装
        rpm -ivh --replacepkgs package.rpm
5、升级软件包
      
rpm -Uvh package.rpm  #如此版本的软件包没安装 直接安装当前版本的软件包
rpm -Fvh package.rpm  #如此版本的软件没安装  当前版本的软件包装不上
6、卸载软件包
-e #卸载rpm 包
--nodeps #忽略包依赖关系卸载
--force  #强制卸载软件包
rpm -ev package
rpm -e package
rpm -e --nodeps package
rpm -e --force package
7、查询RPM包中包含的文件列表
rpm -qlp package
8、查询RPM包中包含的内容信息
 rpm -qip package
9、查询系统中所有已安装RPM包
 rpm-qa
10、查询是否安装软件包
rpm -q package
11、查看软件包文件安装在系统的目录
rpm -ql package
12、查看软件包配置文件安装在系统的目录
rpm -ql package
13、查看文件是由那个RPM包安装
rpm -qf package
14、系统内所有被改动过文件
rpm -Va
15、查看指定软件提供的文件那些被改过a查看指定的文件是否被改动过
 rpm -V package
16、验证软件包
   rpm -V package
S ---文件大小不同
M ---文件权限和文件类型不同
5 ---MD5检验码不同
D ---设备的标识号不同
L ---文件的链接路径不同
U ---文件的所有者不同
G ---文件的所属组不同
T ---文件的修改时间不同
17、手动更新rpm包的数据库文件
rpm --initdb
18、查询RPM包的依赖关系
rpm -qRp package_a.rpm
19、验证RPM签名
   可以使用 --import 导入与软件同时发布的 GPG KEY, 接着使用 -K 命令来验证包的安全性,如:
   
rpm --import pub_ibm_lotus_notes.gpg
rpm -K ibm_lotus_notes-8.5.i586.rpm
返回信息 :
ibm_lotus_notes-8.5.i586.rpm: (sha1) dsa sha1 md5 gpg O
20、重构RPM数据库   如果底层数据库损坏,RPM 将无法正常使用。此时最常用的解决方法是重构数据库:
rm
 
-f 
/var/lib/rpm/__
* ; rpm -vv --rebuilddb
21、查询RPM包的安装时间
rpm -qa --last
22、软件包文件提取
 #解压指定文件到当前目录
rpm2cpio   /../...rpm |cpio –idv   ./../..
23、查询软件包帮助文档
rpm -qc package