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。