Yum更新不适用于CentOS 6.2最小安装

注意:这是我在堆栈交换networking上的第一个问题,请给予怜悯,并在需要时提供指导。

我已经安装了一个CentOS 6.2 KVM guest,并且遇到了问题。 这是我第一次与CentOS合作,所以我觉得这是一个设置,我失踪,但找不到使用谷歌。

这是我的步骤;

  • 下载CentOS-6.2-x86_64-minimal.iso,启动,并通过默认的步骤(只有问题问在哪里键盘,时区,根密码和使用整个硬盘)
  • 重新启动,login,ping google.com无济于事
  • 设置以下设置;

vi /etc/resolv.conf

nameserver 8.8.8.8 nameserver 8.8.4.4 

vi / etc / sysconfig / network-scripts / ifcfg-eth0

 DEVICE="eth0" HWADDR="52:54:00:42:1B:4A" #NM_CONTROLLED="yes" BOOTPROTO=none ONBOOT="yes" NETMASK=255.255.255.0 IPADDR=192.168.122.151 TYPE=Ethernet 

vi / etc / sysconfig / network

 NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=server3.example.com GATEWAY=192.168.122.1 
  • 我现在可以ping google.com

平google.com

 PING google.com (173.194.70.139) 56(84) bytes of data. 64 bytes from fa-in-f139.1e100.net (173.194.70.139): icmp_seq=1 ttl=50 time=5.88 ms 64 bytes from fa-in-f139.1e100.net (173.194.70.139): icmp_seq=2 ttl=50 time=5.77 ms 
  • 但是我不能'更新'

百胜更新

 Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was 14: PYCURL ERROR 7 - "Failed to connect to 2a01:c0:2:4:216:3eff:fe0d:266d: Network is unreachable" Error: Cannot find a valid baseurl for repo: base 

我的KVM guest也是NAT的,因此值得关注。

您的系统正在DNS中findmirrorlist.centos.org的IPv6地址,然后无法连接到该地址。 除非实际上有IPv6连接,否则应该禁用IPv6 。

当我尝试使用最小安装安装CentOS 6.3的虚拟机时,我遇到同样的问题。 我花了一些时间来弄清楚,我在另一个CentOS后面是一个启用代理的防火墙。 我所要做的就是在防火墙上应用一些规则来设置这个虚拟机,并且可以自由访问HTTP端口。

这是关于python urlgrabber。 您可以将mirrorlist.centos.org IPv4 IP地址添加到/ etc / hosts文件。 然后它将通过IPv4连接到mirrorlist.centos.org。

你应该检查你的CentOS-Base.repo和其他的.repo mirrorlist / baseurl参数。 似乎你有ftp://或https:// http://协议地址http://

 [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ 

虽然我具有相同的KVM服务器/客户机configuration,但是我的iptablesconfiguration存在一些问题,我已经将一些/etc/yum.repos.d baseurls地址更改为ftp://一周前,现在我已经检查它出来,并把它回到原来的状态,一切都很好。

尝试这个:

 export http_proxy=http://username:password@proxyServerIP:proxyServerPort/ 

它将为http_proxy创build一个环境variables。

我已经成功完成了这个与yum update

如果你在一个代理的后面,并且可能有IPv6隧道,上面Charles提供的解决scheme必须解决你的问题

 export http_proxy=http://username:password@proxyServerIP:proxyServerPort/ 

由于您的networking检查确定,所以更有可能在您的环境中具有系统范围的代理设置。 我之前遇到过这种情况,没有检查到这个明显的可能性浪费了我的时间。

检查你的环境中是否存在http_proxyvariables:

env | grep -i proxy

如果find,“取消设置http_proxy”应该删除当前shell的代理设置。 ..

要删除未来shell的设置,请查找它设置的位置:

  • 在基于RHEL的系统中,通常在/etc/profile.d/proxy.sh中设置它们。

这是一个真正的耻辱,yum更新不会输出任何状态信息,清楚地显示它正在使用http连接的代理..在初始阶段,下载镜像列表(它会在下载包后显示)。