024 rpm命令
命令说明
rpm 是 RedHat 系(CentOS、RHEL、OpenCloudOS、Fedora)的底层包管理器,用于安装、查询、校验和卸载 .rpm 软件包。日常更推荐上层工具 yum/dnf。
语法
rpm [选项] 包名/文件.rpm
常用参数
| 参数 | 说明 |
|---|---|
| -i | 安装软件包(Install) |
| -U | 升级安装,已存在则升级(Upgrade) |
| -F | 仅升级已安装的包,不安装新包 |
| -e | 卸载软件包(Erase) |
| -q | 查询包信息(Query) |
| -a | 配合 -q 查询所有已安装包 |
| -f | 查询某文件属于哪个包 |
| -l | 列出包安装的文件 |
| -V | 校验已安装包的文件是否被改动 |
| --nodeps | 忽略依赖安装(慎用) |
| --force | 强制安装/覆盖 |
使用示例
$ rpm -ivh app.rpm
安装并显示进度(h 打印井号进度条)
$ rpm -Uvh app.rpm
升级安装
$ rpm -e app
卸载名为 app 的包
$ rpm -qa | grep nginx
查询已安装的 nginx 相关包
$ rpm -qf /usr/bin/ls
查看 ls 命令属于哪个包
$ rpm -ql nginx
列出 nginx 包安装的所有文件
$ rpm -qi nginx
查看包的详细信息(版本、描述、来源)
$ rpm -V httpd
校验 httpd 包文件是否被修改
实用技巧
- rpm 不自动解决依赖,缺依赖会报错;有依赖的包优先用 dnf install ./app.rpm 或 yum localinstall。
- 常用组合:-i 安装 / -U 升级 / -e 卸载 / -q 查询 / -v 详细 / -h 进度。
- -V 校验输出中 S=大小、M=权限、D=设备、T=时间、P=能力、U=用户、G=组、?=读取错误。
- 数据库损坏时用 rpm --rebuilddb 重建;查询依赖用 rpm -qR 包名。
- Debian/Ubuntu 系对应工具是 dpkg,包格式为 .deb。