Linux rpm包管理详解

RPM 软件包管理器,原名为Red Hat Package Manager,是Linux系统最为常见和基础的软件包管理工具,RPM是以一种数据库记录的方式将已经安装的数据包进行记录,为RPM软件包管理及后续yum软件包管理提供数据库依据,因此项目实施过程中,要定时备份RPM数据库,一旦数据库破坏,数据包在安装过程中无法查询依据。

RPM管理功能有,软件包的查询、软件包的确认、软件包的信息查询、软件包的卸载和软件包的更新多种用法。

RPM的查询选项用法较为复杂,特别是p选项,指定未安装的包,参数要跟完整的rpm包名,因为指定未安装的数据包时,要在指定路径下(如某光盘镜像中的Package中)找完整的rpm包。不加p时,只需指明普通报名即可,因为在安装过程中,数据库存储时会把普通报名存为一列。

其他选项如下所示:

功能

 

选项

 

含义

 

q

 

a

 

Query all installed  packages.

 

f

 

Query package owning FILE.

 

g

 

Query packages with the  group of GROUP.

 

p

 

Query  an  (uninstalled)  package   PACKAGE_FILE

 

i

 

Display package information,

 

l

 

List files in package.

 

c

 

List only configuration  files

 

--scripts

 

List the package specific  scriptlet(s)

 

Qa

 

查询所有安装过的数据包

 

Qf

 

查询子模块属于哪个数据包安装的

 

Ql

 

查询数据包中安装路径及内容

 

Qpi

 

查询为安装包的信息,如版本号、描述信息等,P指定未安装的

 

Qc

 

查询数据包

 

-q –scritps

 

+包名,可查询已经安装的包的scripts脚本

 

-qp –scripts

 

+完整的rpm包名,可查询尚未安装的包的scripts脚本

 

[root@CentOS7 ~]#rpm -q --scripts httpd  #仅仅为q时,无需加完整的包明
preinstall scriptlet (using  /bin/sh):
# Add the "apache"  group and user
/usr/sbin/groupadd -g 48 -r  apache 2> /dev/null || :
/usr/sbin/useradd -c  "Apache" -u 48 -g 48 \
    -s /sbin/nologin -r -d /usr/share/httpd apache 2> /dev/null  || :
postinstall scriptlet (using  /bin/sh):
…………
############################################################################
[root@centos7 ~]#rpm -qp –scripts  /media/Packages/httpd-2.4.6-40.el7.centos.x86_64.rpm                          #P查询未按照的完整包名
warning:  /media/Packages/httpd-2.4.6-40.el7.centos.x86_64.rpm: Header V3 RSA/SHA256  Signature, key ID f4a80eb5: NOKEY
preinstall scriptlet (using  /bin/sh):
# Add the "apache"  user
/usr/sbin/useradd -c  "Apache" -u 48 \
    -s /sbin/nologin -r -d /usr/share/httpd apache 2> /dev/null  || :
postinstall scriptlet (using  /bin/sh):
…………
############################################################################
[root@centos7 ~]#rpm -qf  /lib64/libxtables.so.10.0.0 #查询模块属于哪个数据包
iptables-1.4.21-16.el7.x86_64

PRM软件包的安装,在RPM软件包的安装过程中,同样会用到众多参数。
具体用法如下所示:

功能

 

选项

 

含义

 

i

 

V

 

Print verbose information

 

H

 

用#(hash)符显示rpm安装过程

 

--force

 

强制安装数据包

 

--nodeps

 

安装数据包不检查依赖性

 

--noscripts

 

安装数据包不执行数据包中脚本

 

--test

 

测试安装是否成功

 

--prefix

 

指定路径安装

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/13517.html