su - root
cd /etc/yum.repos.d
mv /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
wget
或者
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS-Base-sohu.repo CentOS-Base.repo
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
更新完yum源后,建议更新一下,使操作立即生效
yum makecache
在执行最后一步,即yum makecache的时候,遇到错误:
Loaded plugins: fastestmirrorRepository base is listed more than once in the configurationRepository updates is listed more than once in the configurationRepository extras is listed more than once in the configurationRepository centosplus is listed more than once in the configurationRepository contrib is listed more than once in the configurationLoading mirror speeds from cached hostfile* addons: mirrors.163.com* base: mirror.metrocast.net* extras: mirror.beyondhosting.net* fasttrack: centos.vipernetworksystems.com* updates: centos.vipernetworksystems.comhttp://mirrors.163.com/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"Trying other mirror.http://mirror.centos.org/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"Trying other mirror.Error: Cannot retrieve repository metadata (repomd.xml) for repository: addons. Please verify its path and try again
原因是,http://mirrors.163.com/centos/6/addons/x86_64/repodata/repomd.xml和 http://mirror.centos.org/centos/6/addons/x86_64/repodata/repomd.xml 确实不存在,可能被更新掉了。解决办法是,找到可用的URL替换之,或者把相应的.repo文件中的项整个注释掉。这里我采用后者。
例如,在CentOS-Base-163.repo中,注释掉整个addon项
#[addons]#name=CentOS-$releasever - Addons - 163.com#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons#baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/#gpgcheck=1#pgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
在CentOS-Base-sohu.repo中注释掉下面的内容
#[addons]#name=CentOS-$releasever - Addons - sohu.com#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons#baseurl=http://mirrors.sohu.com/centos/$releasever/addons/$basearch/#gpgcheck=1#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5CentOS-Base-sohu.repo
然后,再执行yum makecache。之后,yum就可以找到我要安装的包了
yum upgrade
建议:不需要更新yum源,centos自己会找最近的yum安装