一 常用
(0)查询未安装的软件包
'格式':rpm -qp [子选项] RPM包文件
q: --query -->'查询'
p: --package -->'未安装的包' -->也可以远程查询'先下载再查询'
******************* '常见的组合选项' *******************
-qpi: 通过rpm包文件查看该软件的'详细信息'
-qpl: 查看.rpm安装包内'所包含的目录、文件列表'-->实质'默认将安装到哪'
-qpc: 查看.rpm安装包内包含的'配置文件'列表
-qpd: 查看.rpm安装包内包含的'文档文件'列表
******************* '不常用但很重要' *******************
rpm -qp --scripts filename.rpm: 查看rpm包'安装时执行的脚本' --> '比较重要!'
rpm -q --scripts httpd
应用场景: '拿到一个安装包,知道里面的内容?以免对系统有危害'
******************* '很重要!!!' *******************
以上的应用场景都是在'已有rpm包'但'尚未安装'的前提下进行查询的-->'url(ftp方式)的会先下载再查询'
(1)查询已安装的RPM软件信息
'常用的场景'
-qa: 查看系统中'已安装的所有RPM软件包'列表,常用'grep过滤指定'
应用场景: 卸载系统'自带的mariad和openjdk'
-qf: 文件或目录名(从哪来的)
****** '分割线' ******
'其它方式和查询未安装包类似' --> '去掉p即可'
(2)安装和卸载
'格式':rpm [选项] RPM完整包文
-i:安装一个新的rpm软件包。 {-i|–install} [-h,–hash]
-v:显示过程中的详细信息 -->'verbose'
-h:以'#'号显示'安装的进度' -->'进度条的形式'
****** '更特殊的' ******
-U:'升级'某个rpm软件,若原本未装,则进行安装 {-U|–upgrade}
-F:更新某个rpm软件,若原本'未装',则'放弃安装' {-F|–freshen}
注意1
'不检查依赖,强制安装' --> '慎重选择' --> '软件无法使用'
rpm -ivh package.rpm --nodeps --force
注意2
rpm -e httpd-2.2.3-31.el7.centos.4
特点: 系统会提示你'有依赖关系,不能卸载'
需求: 想删除,要加上'--nodeps'不检查依'赖强制删除'
结果: 这个结果就是只删除了httpd,跟'他有依赖关系的其它软件是不会删除的',这是所谓的'没有删除干净'
(3)不常用
需求:提取src.rpmrpm中的spec文件