如何识别我的 Linux 机器中错误/错误的存储库?

如何识别我的 Linux 机器中错误/错误的存储库?

亲爱的朋友们和大学们,

我想与大家分享以下问题,我相信这对这里的一些大学很重要

我想验证我的 Linux 机器中的所有存储库都正常

所以我们运行命令 -百胜重新处理如下

我们可以看到有关其中一个存储库的错误

yum repolist
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
file:///var/repoha/bility/h5th5th54/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn't open file /var/repoha/bility/h5th5th54/repodata/repomd.xml"
Trying other mirror.
file:///var/repoha/bility/h5th5th54/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn't open file /var/repoha/bility/h5th5th54/repodata/repomd.xml"
Trying other mirror.
Storage                                                                                                                                                      | 4.1 kB  00:00:00
Storage/group_gz                                                                                                                                             | 4.9 kB  00:00:00
Storage/primary_db                                                                                                                                           |  29 kB  00:00:00
local                                                                                                                                                                 | 4.1 kB  00:00:00
local/group_gz                                                                                                                                                        | 136 kB  00:00:00
local/primary_db                                                                                                                                                      | 3.6 MB  00:00:00
repo id                                                         repo name                                                                                                              status
bility                                                Red Hat Enterprise Linux Server release 7.2 (Maipo) - bility                                                     0
Storage                                                Red Hat Enterprise Linux Server release 7.2 (Maipo) - Storage                                                    37
local                                                           Red Hat Enterprise Linux Server release 7.2 (Maipo) - Local                                                            4,620
repolist: 4,657

因此,为了验证 repo 是否正常,我们要检查 $? 的状态

[root@trump yum.repos.d]# echo $?
0

但我们得到 0

为什么我们得到“0”?尽管回购不正确?

我的问题是如何识别我的 Linux 机器中错误/错误的存储库?

答案1

在我的 Ansible 角色中,我使用check-update --refresh- 作为命令的选项dnf,但同样的想法应该适用于yum.

yum可能没有这个--refresh选择。相反,运行yum clean expire-cache然后yum check-update.

如果更新可用,则退出状态 ( $?)check-update等于 0成功。100任何其他值都将指示失败。通常,尽管我猜并非总是如此,这将表明读取存储库时出现问题。就我的目的而言,这已经足够了。例如,如果我断开网络连接并立即运行该命令,它将返回退出状态1.

更具体地说,我的 Ansible 角色正在安装一个新的存储库,并希望验证该存储库。例如,为了检查存储库是否bility正常运行以及它的元数据是否可以读取,我使用类似 的命令dnf --disablerepo="*" --enablerepo=bility --refresh check-update

相关内容