发现一台服务器的yum不能用了:
[root@fm3 yum.repos.d]# yum update yum
Setting up Update Process
Setting up repositories
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
Cannot find a valid baseurl for repo: update
Error: Cannot find a valid baseurl for repo: update
Setting up Update Process
Setting up repositories
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
Cannot find a valid baseurl for repo: update
Error: Cannot find a valid baseurl for repo: update
后来在网上找到了一个解决方案:将配置文件CentOS-Base.repo里注释掉的yum源重新启用,即将#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
之类URL前面的“#”去掉。
但实践证明,此方案无效。yum依然报错:
[root@fm3 yum.repos.d]# yum update yum
Setting up Update Process
Setting up repositories
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
Reading repository metadata in from local files
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for yum to pack into transaction set.
http://mirror.centos.org/centos/4/os/i386/CentOS/RPMS/yum-2.4.3-4.el4.centos.noarch.rpm: [Errno 14] HTTP Error 404: Not Found
Trying other mirror.
Error: failure: CentOS/RPMS/yum-2.4.3-4.el4.centos.noarch.rpm from base: [Errno 256] No more mirrors to try.
Setting up Update Process
Setting up repositories
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
not using ftp, http[s], or file for repos, skipping - 4 is not a valid release or hasnt been released yet
Reading repository metadata in from local files
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for yum to pack into transaction set.
http://mirror.centos.org/centos/4/os/i386/CentOS/RPMS/yum-2.4.3-4.el4.centos.noarch.rpm: [Errno 14] HTTP Error 404: Not Found
Trying other mirror.
Error: failure: CentOS/RPMS/yum-2.4.3-4.el4.centos.noarch.rpm from base: [Errno 256] No more mirrors to try.
继续搜索,但没有结果。
后来仔细看了看错误提示,发现这是yum源
http://mirror.centos.org/centos/4/不可用所致。于是手工访问
http://mirror.centos.org/centos/4/,发现里面没有任何软件包,只有一个
readme。点开来一看:
This directory (and version of CentOS) is depreciated.
CentOS-4 is now past EOL
You can get the last released version of centos 4.9 here:
http://vault.centos.org/4.9/
CentOS-4 is now past EOL
You can get the last released version of centos 4.9 here:
http://vault.centos.org/4.9/
大意是说,此目录已经没有任何价值了,因为CentOS-4已经停止发布了...
后来又试了其他几个yum源:
发现都是一样的
readme,一样的“CentOS-4 is now past EOL”...
难道全世界都找不到一个可用的CentOs 4 yum源吗?
继续baidu,google,还是没有结果...
后来无意中发现,在这个
readme里有提供一个centos 4.9的下载链接:
http://vault.centos.org/4.9/
打开了一看,发现里面有个
CentOS-Base.repo...唔,这不正是CentOs 4yum源的配置文件吗?再入上层目录,发现4.0~4.9各有一个目录,而且里面都有
CentOS-Base.repo...
真是柳暗花明啊!,在
http://vault.centos.org/这个链接里有一个可用CentOs4 yum源!
于是进入目录4.8(服务器上装的系统是CentOS release 4.8 ),将里面的
CentOS-Base.repo下载覆盖至服务器的/etc/yum.repos.d/CentOS-Base.repo,然后重新运行yum...嘿嘿,终于成功了!