如何修复 Centos 8 上的 dnf 安装

如何修复 Centos 8 上的 dnf 安装

我需要这个命令才能工作:

$ dnf install postgresql12

现在它引发了一个错误:

参数无匹配:postgresql12 错误:无法找到匹配:postgresql12

但是,如果我指定 repo,它就会开始工作:

$ dnf --repo postgresql install postgresql12

但是我需要第一个变体dnf install postgresql12,因为我正在使用 Ansible dnf 模块,它会引发与原始命令完全相同的错误:

  • 没有可用的软件包 postgresql12。

那么,我该如何修复它?

在此处输入图片描述

答案1

我犹豫是否将其添加为答案,因为我不确定这是否是解决问题的好方法。但无论如何,我遇到了同样的问题,并通过module_hotfixes=true在 /etc/dnf/dnf.conf 中添加内容来“修复”它。

https://dnf.readthedocs.io/en/latest/conf_ref.html告诉我们:

模块修补程序

布尔值

将其设置为 True 可禁用模块 RPM 过滤并使存储库中的所有 RPM 可用。默认值为 False。这允许用户创建一个存储库,其中包含模块化系统上的软件包集中包含的精选修补程序。

我不确定为什么在这种情况下它会起作用,我只在一些沙盒服务器上有 dnf 但从未彻底弄清楚它。

答案2

您需要启用存储库,方法是编辑 .repo 文件以添加enabled=1或运行dnf config-manager --set-enabled postgresql

相关内容