centos yum没有足够的高速缓存数据来继续,此时,yum唯一\n可以做的安全操作就是失败

ctehm74n  于 2022-11-07  发布在  其他
关注(0)|答案(3)|浏览(353)

我们在公司使用自定义的yum repos。有什么东西导致他们无法执行yum makecache命令。
我在CentOS Linux release 7.7.1908 (Core)上。
下面是我们运行yum makecache时得到的错误:

One of the configured repositories failed (Unknown),
 and yum doesn't have enough cached data to continue. At this point the only
 safe thing yum can do is fail. There are a few ways to work "fix" this

回购协议看起来像这样,我需要使用他们两个。
Epel回购协议:

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch

# baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch

metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

[epel-debuginfo]
name=Extra Packages for Enterprise Linux 7 - $basearch - Debug

# baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug

metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

[epel-source]
name=Extra Packages for Enterprise Linux 7 - $basearch - Source

# baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS

metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

我公司回购:

[mmp]
name=MMP
baseurl=http://10.245.19.168/mmp_repo/
gpgcheck=0
enabled=1

我不确定是什么问题。如何消除此错误?

cbwuti44

cbwuti441#

这个问题在这里解决了。所以,首先,一些背景:当yum安装一个软件包时,它会解包并将所有文件移动到正确的目录(如optbinetc等)。当网络连接中断时,驱动器写入会停止,在安装过程中,一些文件可能不会被写入,而程序仍然会返回它已成功安装。
要解决此问题,请执行以下操作:
在安装失败的主机上,检查存储库是否正确。
尤其是baseurl
# grep 'baseurl' /etc/yum.repos.d/* | grep HDP
只需在URL中追加“/repodata/repomd.xml”,然后测试它是否可访问。
示例:如果baseurl为http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0,则尝试按以下方式访问它以验证访问权限。请检查所有URL
# curl -v http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/repodata/repomd.xml
如果URL可访问,则在这种情况下尝试通过运行命令来清除yum缓存。
# yum clean all
在yum clean之后,尝试再次运行以下命令,以验证问题是否仍然存在。
# yum -y install ranger_2_6_3_0_235-admin

ncgqoxb0

ncgqoxb02#

请检查您的网络连接。如果您看不到您的系统ip地址,那么您应该检查并使网络连接正常。
我遇到过这个问题。我在VM ware中使用CentOS 7。如果我执行“ifconfig”命令,它将只显示一个IP地址。但通常在VM ware中它应该显示两个IP地址。所以如果你只能看到一个IP地址,请关闭你的Linux系统。然后在VM ware中更改你的网络设置(网络适配器)。
试试这个,它会起作用的...!

kd3sttzy

kd3sttzy3#

这似乎是EPEL资源库的问题。请尝试yum with

--disablerepo=epel\*

直到他们把这个修好
如果您不需要立即从EPEL获取软件包,请使用yum

--disablerepo=epel

直到你本地镜像同步。yum clean all可能有帮助也可能没有帮助,这取决于你击中的是哪个镜像。
我的一般建议仍然有效--除非您立即需要获得EPEL软件包,否则我建议使用

--disablerepo=epel

直到您的本地镜像获得修复的repodata。如果您确实需要EPEL软件包和

yum clean all

没有帮助,您将需要调整您的配置以指向某个具有固定内容的特定镜像,例如添加baseurl= http://ftp.funet.fi/pub/mirrors/fedora.redhat.com/pub/epel/7/

$basearch到epel. repo。不过,大多数镜像现在应该已经更新了。

备选方案〉〉〉

当有人抱怨这个问题时,我碰巧在Freenode频道#epel上,但是如果这个问题发生在我身上,我可以一次启用一个存储库**(使用--disablerepo=* 和--enablerepo=somerepo)**来找到哪个存储库导致了这个问题。

skip_if_unavailable=1对于非关键的存储库来说是个不错的主意。

很多人只需要EPEL中的几个包。一个选择是将你需要的EPEL包导入到某个本地控制的仓库中,然后使用它。createrepo与此相关。

相关问题