跳到主要内容
系统常识 银河麒麟rpm依赖冲突排查

rpm 依赖冲突在麒麟上怎么排查

讲银河麒麟上 rpm/dnf 装包报依赖冲突的排查方法:读懂报错、区分缺失与版本冲突、按顺序定位到具体包,给出常用命令与解决路径。

发布于 2026/11/11 所属频道 银河麒麟

结论先行

依赖冲突的排查顺序是先读懂报错里的关键包名与要求版本,再判断是「缺失」还是「版本被钉死」,最后定位到那个钉死它的包。在 V11 服务器条目 上,用 dnf 的解析命令最省力。

读报错的两个关键字段

dnf install -y pkg
# 报错里关注:
#  1) 缺的是哪个包的哪个版本(requires)
#  2) 哪个已装包在顶住它(conflicts / provides)

排查三板斧

# 1. 谁需要提供这个依赖
dnf repoquery --whatrequires '需要项'
# 2. 仓库里有没有满足的版本
dnf repoquery --qf '%{name}-%{version}-%{arch}' 包名
# 3. 已装的是不是旧版本在顶住
rpm -q 被顶住的包

结论分两支:缺失 → 补介质或换更全的源(源配置见 麒麟系列总览);版本被钉死 → 升级顶住它的那个包,或一并规划替换。

解决路径(按安全度排序)

  1. 升级钉死版本的那组包到目标版本。
  2. 卸载冲突包(先查反向依赖 rpm -qR,避免拆掉在用的组件)。
  3. 换提供该依赖的替代包。
  4. 最后才考虑 --skip-broken,且要明白它只是跳过不是修复。

离线场景的特殊点

离线源包不全时,冲突常表现为「需要的版本源里没有」。先确认 麒麟系列总览 的介质是否完整,别急着调参数。

红线

不要用 rpm -ivh --nodeps 硬装——当下能装上,后续整个包体系更新都会被打穿。

相关条目可参考 Rufus 条目。

相关链接

本文内容基于公开资料整理,仅供参考;涉及授权与合规的操作请以厂商官方文档为准。

相关推荐下载

按本文主题匹配的官方原版镜像条目

配套 PE 工具

制作启动盘、备份数据、修复引导

其他常识文章

同一集合内的相近主题,按标签与关键词匹配