Linux rpm包怎么用_rpm管理命令解析

2次阅读

rpm 是红帽系 linux 底层软件安装方式,需手动处理依赖;安装用 rpm -ivh,查询用 rpm -qa/-q/-qi/-ql,卸载用 rpm -e,升级用 rpm -uvh,定位文件归属用 rpm -qf。

Linux rpm包怎么用_rpm管理命令解析

RPM 包管理是红帽系 Linux(如 RHEL、centos、EulerOS)最底层、最直接的软件安装方式。它不自动解决依赖,但控制精细、可追溯性强,适合离线部署、版本锁定或系统级维护场景。

怎么安装 RPM 包

使用 rpm -ivh package.rpm 安装本地包:

  • -i 表示 install,执行安装操作
  • -v 显示详细过程(如文件路径、脚本执行等)
  • -h 在解压时用 # 显示进度条

例如:sudo rpm -ivh nginx-1.24.0-1.el9.x86_64.rpm

⚠️ 注意:若提示缺失依赖(如 libxxx.so is needed),需先手动安装对应依赖包;也可加 –nodeps 强制跳过检查(不推荐用于系统关键包)。

怎么查已装了哪些 RPM 包

查全部:rpm -qa(输出成百上千行,建议配合 grep 过滤)

查某个包是否装了:rpm -q nginx(返回包名说明已装,报 package nginx is not installed 则未装)

查包的详细信息:rpm -qi nginx(含版本、打包者、安装时间、描述等)

查包里装了哪些文件:rpm -ql nginx(列出所有配置文件、二进制、文档路径)

怎么卸载和升级 RPM 包

卸载用 rpm -e nginx-e = erase),注意只写包名,不带版本或架构后缀。

常见补充选项:

  • –nodeps:忽略依赖关系强行卸载(慎用,可能影响其他软件)
  • –allmatches:当同名多版本共存时,一次性卸载全部

升级用 rpm -Uvh package.rpm-U = upgrade):

  • 若软件未安装,则等效于 -i,直接安装
  • 若已安装旧版,则替换文件、运行升级脚本、保留配置(通常不覆盖 /etc/ 下已有配置)

怎么定位文件属于哪个 RPM 包

当你看到一个命令或配置文件,想确认它是哪个包提供的,用 rpm -qf

  • rpm -qf /usr/bin/sshd → 返回 openssh-server-9.3p1-5.el9.x86_64
  • rpm -qf $(which curl) → 快速查当前 curl 命令来源

搭配 -qi-ql 可进一步查看该包详情或文件列表,形成完整溯源链。

text=ZqhQzanResources