一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

软件包元数据查询:借助repoquery解析包信息

时间:2026-07-07 09:29:57 编辑:袖梨 来源:一聚教程网

repoquery是yum-utils提供的只读查询工具,用于从YUM/DNF仓库提取包元数据;支持-i查详细信息、-l列文件、--requires/--whatrequires查正反向依赖、--whatprovides按内容反向定位包、--show-duplicates和--archlist处理多版本与架构。

repoquery 是 yum-utils 提供的核心查询工具,专用于从启用的 YUM/DNF 仓库中提取软件包元数据,不操作本地安装状态,只读、安全、精准。

查包基础信息与文件列表

-i 获取完整描述:名称、版本、发布号、架构、大小、许可证、摘要、URL、打包者等;用 -l 列出所有安装路径下的文件。两者常组合使用,快速确认包是否含预期组件或配置项。

  • repoquery -i httpd
  • repoquery -l nginx

查依赖关系:谁需要它?它需要谁?

--requires 显示该包运行所依赖的其他包(正向依赖),加 --resolve 可展开为实际包名而非能力名;--whatrequires 则反查哪些包声明了对该包的依赖(反向依赖),对清理冗余包或评估升级影响很实用。

  • repoquery --requires --resolve python3-pip
  • repoquery --whatrequires openssl-libs

按内容反向定位包

当已知一个文件路径、动态库名或 capability(如 libc.so.6),可用 --whatprovides 快速找出提供它的包。这对排查缺失依赖、修复 broken link 或确认某功能由哪个包实现特别高效。

  • repoquery --whatprovides "/usr/bin/vim"
  • repoquery --whatprovides "systemd-units"

处理多版本与架构筛选

企业环境中常存在多个版本共存(如 python38、python39)或跨架构部署(x86_64/aarch64)。用 --show-duplicates 查清所有可用版本;用 --archlist 限定目标平台,避免误查。

  • repoquery --show-duplicates python39
  • repoquery --archlist=aarch64 --requires mariadb-server

不复杂但容易忽略

热门栏目