我遇到了一个配置Yum存储库的问题,我正在使用HTTP / Apache服务。
我想使用http基本身份验证,并将侦听端口设置为80以外的其他值,因为此repo位于我的DMZ中。我试图通过如下设置我的baseurl(来自我的repo文件)来做到这一点:
baseurl=http://user:password@<my-ip>:<my-non-80-port>/yum/RHEL/7/base/$basearch/
yum.conf的文档表明您可以通过在URL上添加用户名/密码来执行基本的http身份验证,就像我上面所做的那样。当我尝试从客户端执行yum search mysql
时出现以下错误:
[Errno 14] HTTP Error 401: Authorization Required
这向我表明,指定端口的额外“:”混淆了yum对我的URL的解析。我删除了端口,将服务器设置回端口80,然后就可以了。
因此,您似乎无法执行基本的http身份验证并更改Web服务器侦听的端口号。我注意到在较新版本的Yum中有username
和password
指令,但我的版本似乎没有这个指令(我正在运行yum-3.2.22-37.0.1.el5) 。有没有解决方法呢?
答案 0 :(得分:0)
我通过在yum配置中添加以下行来关闭插件来解决这个问题。
plugins=0
我认为解决方法有效,因为基础yum更新程序与baseurl的授权信息一起正常工作,但是某些插件(例如fastmirror插件)没有正确记住授权。所以我没有启用插件的行为是,最初更新会起作用,然后随着问题中的授权错误开始失败。一旦我禁用插件,一切都开始正常工作。