rpm
最后更新于:2022-04-02 03:54:24
[TOC]
> [pkgs.org](https://pkgs.org/)
## rpm 参数
```
-a 查询所有套件。
-d 只列出文本文件,本参数需配合"-l"参数使用。
-h 套件安装时显示进度。
-i 显示套件的相关信息。
-l 显示套件的文件列表。
-q 使用询问模式,当遇到任何问题时,rpm指令会先询问用户。
-R 显示套件的关联性信息。
-s 显示文件状态,本参数需配合"-l"参数使用。
-v 显示指令执行过程。
-vv 详细显示指令执行过程,便于排错。
-e<套件档> 删除指定的套件;
-i<套件档> 安装指定的套件档;
--allfiles 安装所有文件。
--allmatches 删除符合指定的套件所包含的文件。
--buildroot<根目录> 设置产生套件时,欲当作根目录的目录。
--changelog 显示套件的更改记录。
--clean 完成套件的包装后,删除包装过程中所建立的目录。
--dump 显示每个文件的验证信息。本参数需配合"-l"参数使用。
--excludepath<排除目录> 忽略在指定目录里的所有文件。
--force 强行置换套件或文件。
--help 在线帮助。
--ignorearch 不验证套件档的结构正确性。
--ignoreos 不验证套件档的结构正确性。
--nobulid 不执行任何完成阶段。
--nodeps 不验证套件档的相互关联性。
--percent 安装套件时显示完成度百分比。
--provides 查询该套件所提供的兼容度。
--querytags 列出可用于档头格式的标签。
--requires 查询该套件所需要的兼容度。
--resing<套件档>+ 删除现有认证,重新产生签名认证。
--root<根目录> 设置欲当作根目录的目录。
--scripts 列出安装套件的Script的变量。
--setperms 设置文件的权限。
--setugids 设置文件的拥有者和所属群组。
--short-circuit 直接略过指定完成阶段的步骤。
--sign 产生PGP或GPG的签名认证。
--target=<安装平台>+ 设置产生的套件的安装平台。
--test 仅作测试,并不真的安装套件。
--triggers 展示套件档内的包装Script。
--version 显示版本信息。
```
## 实例
### 安装 / 强制安装 忽略包依赖安装
```
//网址安装
rpm -ivh https://www.example.rpm
//本地安装
rpm -ivh epel-release-6-8.noarch.rpm
// 强制安装
rpm --force -ivh epel-release-6-8.noarch.rpm
// 忽略依赖
rpm --nodeps -ivh epel-release-6-8.noarch.rpm
// 强制安装并忽略依赖
rpm --force --nodeps -ivh epel-release-6-8.noarch.rpm
```
### 卸载 / 强制卸载
```
// rpm -qa openssl
rpm -e [--nodeps] openssl-libs-1.0.2k-8.el7.ns7.01.i686
```
### 升级rpm包
`rpm -Uvh epel-release-6-8.noarch.rpm `
### 查询/查看
```
rpm -qa 查询所有包
rpm -qi <包名> 查看包信息
rpm -ql <包名> 列出安装包的安装路径
rpm -qlp <包名> 查看RPM包内容
rpm -qf <文件名> 文件源于哪个包名
rpm -qfi <文件名> 文件源于所在包的有关信息
rpm -qlf <文件名> 文件源于所在包的文件列表
rpm -qRp mariadb-10.3.9-8.ky10.aarch64.rpm 查询未安装软件包的依赖关系
rpm -qR mariadb-10.3.9-8.ky10.aarch64 查询已安装软件包的依赖关系
pm2cpio *.rpm| cpio -div 解压获取rpm包文件
```
`<包名>`不带 rpm
### 查看 rpm 包的 *.spec
```
rpm --showrc *.rpm
```
';