【Linux知识】RPM软件包安装命令行详细说明

发布于:2025-03-26 ⋅ 阅读:(33) ⋅ 点赞:(0)

概述

rpm(Red Hat Package Manager)是红帽系 Linux 发行版(如 Red Hat、CentOS、Fedora 等)用于管理软件包的工具,下面为你详细介绍其命令行使用方式。

安装软件包

rpm -i [选项] 软件包文件
  • -i:install 的缩写,用于安装软件包。
  • 常用选项
    • -v:显示详细的安装过程。
    • -h:以 # 显示安装进度。
    • --nodeps:安装时不检查依赖关系,但可能导致软件无法正常运行。
    • --force:强制安装,即使软件包已安装也会重新安装。
  • 示例
rpm -ivh example.rpm

此命令会详细显示 example.rpm 软件包的安装过程,并以 # 展示进度。

升级软件包

rpm -U [选项] 软件包文件
  • -U:upgrade 的缩写,用于升级软件包。若软件未安装则进行安装,已安装则升级。
  • 示例
rpm -Uvh example.rpm

卸载软件包

rpm -e [选项] 软件包名称
  • -e:erase 的缩写,用于卸载软件包。
  • 常用选项
    • --nodeps:卸载时不检查依赖关系。
    • --force:强制卸载,即使有其他软件依赖该软件包。
  • 示例
rpm -e example

查询软件包信息

rpm -q [选项] [软件包名称]
  • -q:query 的缩写,用于查询软件包信息。
  • 常用选项
    • -a:查询所有已安装的软件包。
    • -i:显示软件包的详细信息,如版本、大小、安装时间等。
    • -l:列出软件包安装的所有文件。
    • -f:查询文件所属的软件包。
    • -s:查询软件包中文件的状态。
  • 示例
# 查询所有已安装软件包
rpm -qa
# 显示 example 软件包的详细信息
rpm -qi example
# 列出 example 软件包安装的所有文件
rpm -ql example
# 查询 /etc/passwd 文件所属的软件包
rpm -qf /etc/passwd

验证软件包

rpm -V [选项] [软件包名称]
  • -V:verify 的缩写,用于验证软件包文件是否被修改过。验证内容包括文件大小、权限、MD5 等。
  • 示例
rpm -V example

从软件包中提取文件

rpm2cpio 软件包文件 | cpio -idmv
  • rpm2cpio:将 RPM 包转换为 CPIO 归档文件。
  • cpio -idmv:从 CPIO 归档文件中提取文件。
  • 示例
rpm2cpio example.rpm | cpio -idmv

注意事项

  • 依赖关系:RPM 自身处理依赖关系能力有限,安装、升级、卸载时可能因依赖问题失败,可借助 yumdnf 等工具处理。
  • 权限:安装、升级、卸载操作通常需要 root 权限。
  • 软件包文件路径:操作时需确保提供正确的软件包文件路径或软件包名称。