安装:

-i --install    安装

-v --verbose   显示详细信息

-h --hash    打印#显示进度

-vv       更加详细显示信息

Linux rpm命令_rpm包

Linux rpm命令_rpm包_02

rpm不能自行解决包依赖关系,安装Samba时之前需要解决依赖关系,否则无法安装成功

--nodeps: 忽略依赖关系  -----> rpm -ivh --nodeps samba-4.13*

Linux rpm命令_rpm包_03

--replacepkgs:  重新安装rpm包

Linux rpm命令_包依赖_04

 

 

升级:

-U --upgrade=<packagefile>    

Linux rpm命令_安装包_05

-U 检测软件是否被安装,没有安装则直接安装,如果安装了则升级到最新版本

--nodeps:忽略依赖关系

--oldpackage: 降级

--force: 强制升级

 Linux rpm命令_安装软件_06

未实验出来

 

 

查询:(配合-q参数)

-a  --all          查询验证所有已经安装的软件包

-f  --file          查询指定的文件由哪个程序包安装生产

-p  --package        对于未安装的程序包执行查询操作

 -l  --list          列出程序包安装生产的文件列表

-i --info          查询程序包相关的信息、包含版本、信息、时间等等

-R --regulres        查询程序包依赖的包

Linux rpm命令_rpm包_07

-c            查询程序包有哪些执行的配置文件

 Linux rpm命令_包依赖_08

 

 

 

 

-qi 软件包名称       查看已经安装的软件包信息

-qpi  软件包全名       查看未安装软件包信息

-q  query查询

-i  information 信息

-p package 软件包

Linux rpm命令_安装软件_09

Linux rpm命令_rpm包_10

这里利用rpm -qi查询已经安装软件信息比较实用,-qpi查看未安装安装信息,前提是在软件库目录

 

-ql      显示已软件包所有文件的安装位置

-qpl      显示未安装包安装之后所在位置

Linux rpm命令_包依赖_11

Linux rpm命令_包依赖_12

 

-f      根据文件的名字逆向推导出从哪个软件包中安装出来的

Linux rpm命令_包依赖_13

which touch获取touch命令安装位置,通过安装位置,使用rpm -qf逆向查询到touch命令是从哪个软件包安装过来的