直接用 rpm -ivh 会失败,因为不解决依赖
Linux 手动安装 RPM 包时,rpm -ivh package.rpm 最常报错:Failed dependencies。这不是命令写错了,而是 rpm 工具本身不联网、不查仓库、不自动装依赖——它只做“校验+解压+注册”,依赖得你亲手凑齐。
常见错误现象包括:
error: Failed dependencies: libxxx.so.5 is needed by xxx- 装完后运行报
command not found或libxxx.so.6: cannot open shared object file - 反复下载多个 RPM,却始终卡在某个未满足的依赖上
优先用 yum 或 dnf 替代 rpm 命令
如果你的系统有网络且配置了可用仓库(RHEL/CentOS 7/8、Fedora、AlmaLinux 等),根本不需要手动下 RPM。用包管理器能自动拉依赖:
- CentOS 7 / RHEL 7:
yum localinstall package.rpm(注意不是install) - RHEL 8+ / Fedora / CentOS Stream:
dnf install ./package.rpm(路径必须带./或绝对路径) - 两者都支持
--nogpgcheck跳过签名验证(仅限可信源)
原理上,yum localinstall 和 dnf install ./xxx.rpm 会解析该 RPM 的 Requires 字段,然后从已启用的 repo 中匹配并安装所有缺失依赖,顺序和版本都由 resolver 决定。
真要手动装,用 rpm -qpR 查依赖,再用 dnf download 拉齐
离线环境或需精确控制版本时,可分步处理: