>(1) 使用yum安装相关软件包时一直提示以下错误:repodata/repomd.xml: [Errno 4] IOError: , Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again (2) 使用yum安装相关软件包时出现如下错误:file:///media/CentOS/repodata/repomd.xml: [Errno 5] OSError: [Errno 2] 没有那个文件或目录 (3) 使用yum安装相关软件包时找到的包版本不对应,例如 CentOS 5.2下安装 virt-manager,一直提示相应的软件包不能在yum源处下载. [Errno 14] HTTP Error 404: Not Found 总结 (1) 使用yum安装相关软件包时一直提示以下错误: [root@glnode04 ~]# yum -y install xen* http://10.10.113.14:8888/mirrors/CentOS/5.2/vault.centos.org/os/x86_64/repodata/repomd.xml: [Errno 4] IOError: Trying other mirror. Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again 怀疑是网络问题, repomd.xml 文件下载不下来,但是使用wget 可以下载。 最后发现时是yum自己的代理设置问题,将其取消掉。 [root@glnode04 ~]# vim /etc/yum.conf [main] cachedir=/var/cache/yum keepcache=0 debuglevel=2 logfile=/var/log/yum.log distroverpkg=redhat-release tolerant=1 exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 # Note: yum-RHN-plugin doesn't honor this. metadata_expire=1h # Default. # installonly_limit = 3 # PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum.repos.d #The proxy server address #proxy=http://10.10.44.251:6588 这个代理上不了网,导致 repomd.xml 下载不下来,取消掉;要设置 Yum 代理就在此处设置 (2) 修改后安装出现如下错误 [root@glnode04 yum.repos.d]# yum -y install virt-manager base 100% |=========================| 1.1 kB 00:00 primary.xml.gz 100% |=========================| 1.1 MB 00:00 base : ################################################## 3222/3222 updates 100% |=========================| 1.1 kB 00:00 primary.xml.gz 100% |=========================| 1.1 MB 00:00 updates : ################################################## 3222/3222 file:///media/CentOS/repodata/repomd.xml: [Errno 5] OSError: [Errno 2] 没有那个文件或目录 : '/media/CentOS/repodata/repomd.xml' Trying other mirror. file:///media/cdrecorder/repodata/repomd.xml: [Errno 5] OSError: [Errno 2] 没有那个文件或目录: '/media/cdrecorder/repodata/repomd.xml' Trying other mirror. file:///media/cdrom/repodata/repomd.xml: [Errno 5] OSError: [Errno 2] 没有那个文件或目录: '/media/cdrom/repodata/repomd.xml' Trying other mirror. Error: Cannot retrieve repository metadata (repomd.xml) for repository: c5-media. Please verify its path and try again 这是 /etc/yum.repos.d /CentOS-Med ia.repo 在作怪,删掉,或者重命名 [root@glnode04 yum.repos.d]# cd /etc/yum.repos.d [root@glnode04 yum.repos.d]# mv CentOS-Media.repo CentOS-Media.repo.bak (3) 使用yum安装相关软件包时找到的包版本不对应,例如 CentOS 5.2下安装 virt-manager,一直提示相应的软件包不能在yum源处下载. 错误如下: Downloading Packages: http://10.10.104.86:8080/CentOS/5.2/CentOS/libvirt-python-0.6.3-20.el5.x86_64.rpm: [Errno 14] HTTP Error 404: Not Found Trying other mirror. http://10.10.104.86:8080/CentOS/5.2/CentOS/kernel-xen-2.6.18-164.el5.x86_64.rpm: [Errno 14] HTTP Error 404: Not Found 原因分析: 搜索一下Cent OS 5.2 下的软件包kernel-xen,发现版本是 kernel-xen-2.6.18-92.el5.x86_64.rpm . 而这里提示的是下载 kernel-xen-2.6.18-164.el5.x86_64.rpm失败,二者不对应。 这说明虽然 yum 的源配置到了 CentOS 5.2 的镜像,但是使用 yum 安装时下载的确是 另外的版本, 查看 /etc/yum.conf 文件,有 cachedir=/var/cache/yum 项,这是 yum 的缓存,我想是不是缓存的原因呢,于是删掉 /var/cache/yum 下的所有文件,重新使用 yum install 安装,成功了。 之后想想,终于明白原因了,之前我由于误操作,将 yum 源配置成了 CentOS 5.4 的源,并且做了相同的安装,这样会有缓存,下次即使配置了新 yum 源,yum 查找软件包依赖时首先还是从缓存中查找的,查不到的才到 源中搜索,这样就导致下载的是 5.4 下的版本 kernel-xen-2.6.18-164.el5.x86_64.rpm 了。 (责任编辑:IT) |