内容目录:
案例一:安装软件
1.1 安装软件
1.2 安装软件并显示详细信息
1.3 重复安装软件
1.4 忽略依赖问题安装软件
1.5 强制安装软件 (不建议)
案例二:删除软件
2.1 删除软件
2.2 删除软件并显示详细信息
案例三:升级软件
3.1 升级软件
3.2 升级软件并显示详细信息
3.3 忽略依赖问题升级软件
3.4 强制升级软件 (不建议)
案例四:显示软件
4.1 显示所有已安装的软件
4.2 显示所有已安装的软件的安装时间
4.3 显示所有已安装的软件属于哪一个系统版本
4.4 显示软件的文件信息
4.5 显示软件的全部信息 (包括安装时间、大小等等)
4.6 显示软件的所有文件
4.6.1 显示软件的所有文件
4.6.2 显示软件的所有文件和这些文件的详细信息
4.7 显示软件所有文件的状态
4.7.1 显示软件所有文件的状态
4.7.2 显示软件所有文件的状态和这些文件的详细信息
4.8 显示软件的配置文件
4.8.1 显示软件的配置文件
4.8.2 显示软件的配置文件和这些文件的详细信息
4.9 显示软件的文档文件 (man 手册、info 手册、READMEs 等等)
4.9.1 显示软件的文档文件 (man 手册、info 手册、READMEs 等等)
4.9.2 显示软件的文档文件 (man 手册、info 手册、READMEs 等等)
4.10 显示软件的变更历史
4.10.1 显示软件的变更历史
4.10.2 显示软件某项信息的变更历史
4.10.3 显示软件现在的版本是否修复 CVE 漏洞
4.11 显示文件所属软件
案例五:验证软件
5.1 验证软件
5.2 验证包含的文件的软件是否正确
5.3 验证所有已经安装的软件
5.4 通过 RPM 文件验证软件
案例六:测试软件
6.1 测试安装软件
6.2 测试删除软件
案例七:确认软件现在的版本是否修复 CVE 漏洞
具体的内容:
案例一:安装软件
1.1 安装软件
# rpm -i proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以安装 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
1.2 安装软件并显示详细信息
# rpm -ivh proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以安装 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
1.3 重复安装软件
# rpm -ivh --replacepkgs proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(
补充:
1) 这里以安装 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例
2) 重复安装软件时,没有 –replacepkgs 参数则会安装失败
)
1.4 忽略依赖问题安装软件
# rpm -ivh --nodeps proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(
补充:
1) 这里以安装 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例
2) 忽略依赖问题安装软件时,如果有依赖问题的话,没有 –nodeps 参数则会安装失败
)
1.5 强制安装软件 (不建议)
# rpm -ivh --force proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以安装 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
案例二:删除软件
2.1 删除软件
# rpm -e proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以删除 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
2.2 删除软件并显示详细信息
# rpm -evh proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以删除 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
案例三:升级软件
3.1 升级软件
# rpm -U proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以升级 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
3.2 升级软件并显示详细信息
# rpm -Uvh proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以升级 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
3.3 忽略依赖问题升级软件
# rpm -Uvh --nodeps proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(
补充:
1) 这里以升级 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例
2) 忽略依赖问题升级软件时,如果有依赖问题的话,没有 –nodeps 参数则会安装失败
)
3.4 强制升级软件 (不建议)
# rpm -Uvh --force proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以升级 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
案例四:显示软件
4.1 显示所有已安装的软件
# rpm -qa
4.2 显示所有已安装的软件的安装时间
# rpm -qa --last
4.3 显示所有已安装的软件所属的系统版本
# rpm -qa --queryformat "%{DISTRIBUTION}\n" | sort | uniq
4.4 显示软件的文件信息
# rpm -qp log4j-1.2.17-18.el7_4.noarch
(补充:这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的信息为例)
4.5 显示软件的全部信息 (包括安装时间、大小等等)
# rpm -qi log4j-1.2.17-18.el7_4.noarch
(补充:这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的信息为例)
4.6 显示软件的所有文件
4.6.1 显示软件的所有文件
# rpm -ql log4j-1.2.17-18.el7_4.noarch
(补充:这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的信息为例)
4.6.2 显示软件的所有文件和这些文件的详细信息
# rpm -qlv log4j-1.2.17-18.el7_4.noarch
(
补充:
1) 这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的信息为例
2) v 参数在这里的作用类似 ls 命令中的 -l 参数
)
4.7 显示软件所有文件的状态
4.7.1 显示软件所有文件的状态
# rpm -qs log4j-1.2.17-18.el7_4.noarch
(补充:这里以显示 log4j-1.2.17-18.el7_4.noarch 软件所有文件的状态为例)
4.7.2 显示软件所有文件的状态和这些文件的详细信息
# rpm -qsv log4j-1.2.17-18.el7_4.noarch
(
补充:
1) 这里以显示 log4j-1.2.17-18.el7_4.noarch 软件所有文件的状态为例
2) v 参数在这里的作用类似 ls 命令中的 -l 参数
)
4.8 显示软件的配置文件
4.8.1 显示软件的配置文件
# rpm -qc log4j-1.2.17-18.el7_4.noarch
(补充:这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的信息为例)
4.8.2 显示软件的配置文件和这些文件的详细信息
# rpm -qcv log4j-1.2.17-18.el7_4.noarch
(
补充:
1) 这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的信息为例
2) v 参数在这里的作用类似 ls 命令中的 -l 参数
)
4.9 显示软件的文档文件 (man 手册、info 手册、READMEs 等等)
4.9.1 显示软件的文档文件 (man 手册、info 手册、READMEs 等等)
# rpm -qd log4j-1.2.17-18.el7_4.noarch
(补充:这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的文档为例)
4.9.2 显示软件的文档文件 (man 手册、info 手册、READMEs 等等)
# rpm -qdv log4j-1.2.17-18.el7_4.noarch
(
补充:
1) 这里以显示 log4j-1.2.17-18.el7_4.noarch 软件的文档为例
2) v 参数在这里的作用类似 ls 命令中的 -l 参数
)
4.10 显示软件的变更历史
4.10.1 显示软件的变更历史
# rpm -q openssh-clients --changelog
(补充:这里以显示 openssh-clients 软件的变更历史为例)
4.10.2 显示软件 CVE 信息的变更历史
# rpm -q openssh-clients --changelog | grep -i cve
(补充:这里以显示 openssh-clients 软件的 CVE 信息的变更历史为例)
4.10.3 显示软件现在的版本是否修复 CVE 漏洞
# rpm -qpi --changelog redis-6.0.14-6.8.1.x86_64.rpm |grep -E '32675'
- Fix CVE-2021-32675, Denial Of Service when processing RESP request
(CVE-2021-32675, bsc#1191303)
* cve-2021-32675.patch
(补充:这里以确认 redis-6.0.14-6.8.1.x86_64.rpm 软件是否已修复 CVE-2021-32675 为例)
4.11 显示文件所属软件
# rpm -qf /usr/share/java/log4j.jar
(补充:这里以显示 /usr/share/java/log4j.jar 文件属于哪个软件为例)
案例五:验证软件
5.1 验证软件
# rpm -V proxychains-ng-4.11-lp152.3.5.x86_64
(
补充:
1) 这里以验证 proxychains-ng-4.11-lp152.3.5.x86_64 软件为例
2) 如果什么都不显示,则代表什么都没有改变
3) 如果显示 5 则代表 MD5 校验码发生改变
4) 如果显示 S 则代表文件大小发生改变
5) 如果显示 L 则代表超链接发生改变
6) 如果显示 T 则代表文件修改日期发生改变
7) 如果显示 D 则代表设备发生改变
8) 如果显示 U 则代表所属主发生改变
9) 如果显示 G 则代表所属组发生改变
10) 如果显示 M 则代表权限和文件类型发生改变
)
5.2 验证包含文件的软件是否正确
# rpm -Vf /etc/proxychains
(
补充:
1) 这里以验证 /etc/proxychains 文件为例
2) 如果什么都不显示,则代表什么都没有改变
3) 如果显示 5 则代表 MD5 校验码发生改变
4) 如果显示 S 则代表文件大小发生改变
5) 如果显示 L 则代表超链接发生改变
6) 如果显示 T 则代表文件修改日期发生改变
7) 如果显示 D 则代表设备发生改变
8) 如果显示 U 则代表所属主发生改变
9) 如果显示 G 则代表所属组发生改变
10) 如果显示 M 则代表权限和文件类型发生改变
)
5.3 验证所有已经安装的软件
# rpm -Va
(
补充:
1) 如果什么都不显示,则代表什么都没有改变
2) 如果显示 5 则代表 MD5 校验码发生改变
3) 如果显示 S 则代表文件大小发生改变
4) 如果显示 L 则代表超链接发生改变
5) 如果显示 T 则代表文件修改日期发生改变
6) 如果显示 D 则代表设备发生改变
7) 如果显示 U 则代表所属主发生改变
8) 如果显示 G 则代表所属组发生改变
9) 如果显示 M 则代表权限和文件类型发生改变
)
5.4 通过 RPM 文件验证软件
# rpm -Vp proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(
补充:
1) 这里以使用 proxychains-ng-4.11-lp152.3.5.x86_64.rpm RPM 文件进行验证为例
2) 如果什么都不显示,则代表什么都没有改变
3) 如果显示 5 则代表 MD5 校验码发生改变
4) 如果显示 S 则代表文件大小发生改变
5) 如果显示 L 则代表超链接发生改变
6) 如果显示 T 则代表文件修改日期发生改变
7) 如果显示 D 则代表设备发生改变
8) 如果显示 U 则代表所属主发生改变
9) 如果显示 G 则代表所属组发生改变
10) 如果显示 M 则代表权限和文件类型发生改变
)
案例六:测试软件
6.1 测试安装软件
# rpm -ivh --test proxychains-ng-4.11-lp152.3.5.x86_64.rpm
(补充:这里以测试安装 proxychains-ng-4.11-lp152.3.5.x86_64.rpm 软件为例)
6.2 测试删除软件
# rpm -e --test proxychains-ng-4.11-lp152.3.5.x86_64
(
补充:
1) 这里以测试删除 proxychains-ng-4.11-lp152.3.5.x86_64 软件为例
2) 这里会显示 proxychains-ng-4.11-lp152.3.5.x86_64 软件被哪些软件依赖
)