一、RPM简介
RPM:RedHat Package Manager,顾名思义就是就是由RedHat开发的软件包管理器,也就是一个linux软件包安装工具。
软件包的组成及默认安装路径:
二进制程序:主要存放在/bin /sbin /usr/bin下的一些可执行文件
库文件:主要存放在/usr/lib/ /usr/local/lib目录下的一些程序使用的动态函数库。
配置文件:主要存放在/etc目录下的一些用以实现程序相关配置参数的设置和修改的文件。
帮助文件:主要存放在/usr/share/doc目录下的一些基本的软件使用手册与帮助文档和存放在/usr/share/man目录下的一些man page文件。
二、RPM的优缺点
RPM优点:
1. RPM内含已经编译过的程序与设置文件等数据,可以让用户免除重新编译的困扰。
2. RPM在被安装之前,先会检查硬盘的容量,操作系统版本等,可以避免文件被错误安装。
3. RPM文件本身提供软件版本信息,一来属性软件名称,软件用途说明,软件所含文件等信息,便于了解软件。
4. RPM管理的方式使用数据库记录RPM文件的相关参数,便于升级,删除,查询与验证。
RPM的缺点:RPM最为人诟病的就是无法自行解决软件的属性依赖。如何自行解决软件的属性依赖在后续博文中介绍。
三、RPM操作实例
1.RPM包文件格式
实例: lftp-4.0.9-1.el6.i686.rpm
解释:
Lftp:软件包包名
4.0.9:主版本号 次版本号 发行号
-1:包的修正号
el6:Red Hat Enterprise Linux 6
i686:使用平台(intel 32位平台)
rpm:rpm包后缀名
2.RPM包的检测
命令:rpm -K /PATH/TO/RPM_FILE
rpm --checksig /PATH/TO/RPM_FILE
3.RPM包的安装
命令:rpm -i /PATH/TO/RPM_FILE
Options: -v,-vv,-vvv:显示详细信息,详细程度由v的个数决定。
-h:以“#”显示安装进度,一个“#”便是2%
--nodeps:忽略依赖关系
--test:测试安装
4.RPM包的卸载
命令:rpm -e PACKAGE_NAME
--nodeps:忽略依赖关系
5.RPM包的查询
命令:rpm -q PACKAGE_NAME
-qa:查询所有已经安装的包
-qi:查询生成的文件清单
-qc:查询配置文件
-qf:查询某文件有哪个包生成
-ql:查询生成的文件清单
-qd:查询生成的帮助文档
--script:查询包相关的脚本
6.查询尚未安装的RPM包的信息
命令:rpm qp /PATH/TO/RPM_FILE
-qpi,-qpl,-qpc,-qpd,-qpf,-qpd
7.RPM包升级
命令:rpm -U:升级+安装
-F:只升级不安装
--force:强行升级
--nodeps:忽略依赖关系
8.校验RPM包
命令:rpm -V PACKAGE_NAME
9.RPM综合操作
(1)RPM包的检测
不好,检测没过,MISSING KEYS。生产环境中一定要保证数据的完整性和合法性。
(2)测试安装lftp软件包
(3)安装lftp软件包
安装成功
(4)查询安装
(5)测试安装的软件包
OK,测试成功,可以使用!!!
(6)卸载lftp软件包
(7)查看未安装的软件包
四.总结
虽然RPM有很多优点,但是面对错综复杂的依赖关系时就显得捉襟见肘,那么如何找的一个好的办法解决这个难题?那就是后续博文中介绍的yum安装。