RPM是一种用于互联网下载包的打包及安装工具,它包含在一些Linux分发版中。使用rpm安装软件往往比使用源码安装更加方便快捷。
下面,我们通过rpm包的安装,卸载,升级,查询,校验,及数据库重建了解rpm的使用。
制作自己的rpm包 http://www.linuxidc.com/Linux/2013-06/86435.htm
Linux 下rpm安装后的目录结构和一些配置 http://www.linuxidc.com/Linux/2013-06/85761.htm
rpm与yum的综合性介绍与示例演示 http://www.linuxidc.com/Linux/2013-05/84480.htm
RedHat Linux—rpm 命令详解 http://www.linuxidc.com/Linux/2013-03/81971.htm
使用FPM轻松制作RPM包 http://www.linuxidc.com/linux/2014-06/103019.htm
1.rpm包的安装
[常用选项]
-i install 安装
-v 显示详细信息
-vv 显示更加详细的信息
-h 使用#显示安装进度
–test 仅测试是否可以安装,但是不进行安装
–nodeps 不考虑依赖关系进行安装,可能造成软件无法正常使用
–replacepkgs 重新安装软件包,如原有配置文件存在,可能无法覆盖
常用组合: rpm -ivh
[示例]
[root@localhost Packages]# rpm -ivh zsh-4.3.10-4.1.el6.x86_64.rpm
Preparing… ########################################### [100%]
1:zsh ########################################### [100%]
2.rpm包的卸载
[常用选项]
-e 程序卸载–nodeps 不卸载相关依赖包,可能导致其他软件无法使用
[示例]
[root@localhost Packages]# rpm -e zsh
3.rpm包的升级
[常用选项]
-U 软件存在则升级软件,不存在则安装软件
-F 软件存在则升级软件,不存在则不做任何动作
-v 显示详细信息
-h 使用#显示安装进度
[示例]
[root@localhost ~]# rpm -Uvh zsh-4.3.10-7.el6.x86_64.rpm
warning: zsh-4.3.10-7.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing… ########################################### [100%]
1:zsh ########################################### [100%]
[root@localhost ~]# rpm -e zsh #卸载后通过-U可以安装
[root@localhost ~]# rpm -Uvh zsh-4.3.10-7.el6.x86_64.rpm
warning: zsh-4.3.10-7.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing… ########################################### [100%]
1:zsh ########################################### [100%]
[root@localhost ~]# rpm -e zsh #卸载后通过-F不会安装
[root@localhost ~]# rpm -Fvh zsh-4.3.10-7.el6.x86_64.rpm
warning: zsh-4.3.10-7.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2014-08/105382p2.htm
4.rpm包的查询
[常用选项]
-q PKG_NAME :查询某软件是否已经安装
-qa :查询所有已安装的软件包列表
-qi :查询包的描述信息-ql PKG_NAME:查询指定软件包所生成的文件列表
-qc :查询指定软件包所生成的配置文件
-qd :查询指定软件包所生成的文档文件
-q –scripts :查询指定软件包所生成的文档
脚本有4类:
preinstall :安装前执行的脚本
postinstall:安装后执行的脚本
preuninstall:卸载前执行的脚本
postuninstall:卸载后执行的脚本
-qf FILE :查询某文件是由哪个软件包生成的
#在使用-qi,-qc,-ql,-qd时,加入-p选项可以查看指定rpm包的相关信息,而非已安装的软件包信息
[示例]
[root@localhost ~]# rpm -q zshzsh-4.3.10-7.el6.x86_64
[root@localhost ~]# rpm -qc zsh
/etc/skel/.zshrc
/etc/zlogin
/etc/zlogout
/etc/zprofile
/etc/zshenv
/etc/zshrc
[root@localhost ~]# rpm -qpc zsh-4.3.10-7.el6.x86_64.rpm
warning: zsh-4.3.10-7.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
/etc/skel/.zshrc
/etc/zlogin
/etc/zlogout
/etc/zprofile
/etc/zshenv
/etc/zshrc
5.rpm包的校验操作
[常用选项]
-V PKG_NAME:校验指定包的配置文件是否发生更改
S 大小
M 权限,文件类型
5 MD5
D 设备号
L 路径
U 属主
G 属组
T 修改时间
P 能力
. 未发生改变
[示例]
#在指定文件中加入部分注释信息后执行如下命令
[root@localhost ~]# rpm -V zsh
S.5….T. c /etc/skel/.zshrc #说明指定文件的大小,MD5修改时间发生了变化
6.rpm包的来源合法性及完整性校验
[常用选项]
–import 导入公钥文件
-qa gpg-pubkey* 查询已导入的公钥文件
-qi gpg-pubkey-NAME 查询指定密钥的详细信息
-K PKG_FILE 查询指定包文件校验是否成功,安装过程中会自动进行校验
[示例]
[root@localhost ~]# rpm –import /test/RPM-GPG-KEY-RedHat-release
7.rpm数据库的重建
–initdb 如果数据库文件不存在则新建,存在则退出
–rebuilddb 直接覆盖原有数据库文件
本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-08/105382.htm