我正在尝试使用 YUM 安装 (Yum install shibboleth) 安装 shibboleth SP 包。安装时出现以下错误。
Downloading Packages:
http://download.opensuse.org/repositories/security%3A/shibboleth/CentOS_CentOS-6/x86_64/libcurl- openssl-7.33.0-1.1.x86_64.rpm: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
http://download.opensuse.org/repositories/security%3A/shibboleth/CentOS_CentOS- 6/x86_64/liblog4shib1-1.0.8-1.1.x86_64.rpm: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
http://download.opensuse.org/repositories/security%3A/shibboleth/CentOS_CentOS-6/x86_64/libsaml8-2.5.3-1.1.x86_64.rpm: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
http://download.opensuse.org/repositories/security%3A/shibboleth/CentOS_CentOS-6/x86_64/libxerces-c-3_1-3.1.1-2.1.x86_64.rpm: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
http://download.opensuse.org/repositories/security%3A/shibboleth/CentOS_CentOS-6/x86_64/libxml-security-c17-1.7.2-2.1.x86_64.rpm: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
http://download.opensuse.org/repositories/security%3A/shibboleth/CentOS_CentOS-6/x86_64/libxmltooling6-1.5.3-1.1.x86_64.rpm: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
Error Downloading Packages:libxerces-c-3_1-3.1.1-2.1.x86_64: failure: x86_64/libxerces-c-3_1- 3.1.1-2.1.x86_64.rpm from security_shibboleth: [Errno 256] No more mirrors to try.
liblog4shib1-1.0.8-1.1.x86_64: failure: x86_64/liblog4shib1-1.0.8-1.1.x86_64.rpm from security_shibboleth: [Errno 256] No more mirrors to try.
libcurl-openssl-7.33.0-1.1.x86_64: failure: x86_64/libcurl-openssl-7.33.0-1.1.x86_64.rpm from security_shibboleth: [Errno 256] No more mirrors to try.
libxml-security-c17-1.7.2-2.1.x86_64: failure: x86_64/libxml-security-c17-1.7.2-2.1.x86_64.rpm from security_shibboleth: [Errno 256] No more mirrors to try.
libsaml8-2.5.3-1.1.x86_64: failure: x86_64/libsaml8-2.5.3-1.1.x86_64.rpm from security_shibboleth: [Errno 256] No more mirrors to try.
libxmltooling6-1.5.3-1.1.x86_64: failure: x86_64/libxmltooling6-1.5.3-1.1.x86_64.rpm from security_shibboleth: [Errno 256] No more mirrors to try.
导致此问题的原因是什么?我使用相同的命令在其他一些机器上安装了它(它运行良好)。
答案1
如果你的浏览器出现 404 错误,这是什么意思?这里也是一样。
您缓存了不再有效的此存储库元数据,或者您在访问镜像时遇到网络问题。请从 a 开始,yum clean all
然后重试。如果仍然失败,请开始调查网络堆栈。(您是否在此主机上缓存了 download.opensuse.org 等的错误 DNS 记录。)
答案2
最后我确定了这个问题。
我的机器联系的镜像不包含所请求的文件。
因此,更改存储库配置中的基本 URL/镜像列表可以解决问题。
答案3
Aravind 的回答似乎根本不是一个答案。以下是我能提供的最佳答案:
请注意,repo 文件中的 URL(http://download.opensuse.org/repositories/security://shibboleth/RHEL_5/security:shibboleth.repo或类似的,取决于您的平台):
其中有一个,并注意错误 URL 已将其:
替换为%3A
。
当你运行 yum 命令时,它会显示一堆失败的 URL,但如果你直接复制并粘贴这些 URL 到 curl 或 wget 中,文件就会下载成功。因此文件是在服务器上,但是 yum 对 URL 的处理与 URL 格式不一样。
我现在知道的唯一解决方案是将所有 URL 复制/粘贴到 wget 或 curl,然后使用 yum 安装本地 rpm 文件。