yum使用過程中的常見錯誤
目錄
(1) 使用yum安裝相關軟體包時一直提示以下錯誤:repodata/repomd.xml: [Errno 4] IOError: <urlopen error (113>,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安裝相關軟體包時一直提示以下錯誤:
[[email protected] ~]# 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: <urlopen error (113
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again
懷疑是網路問題, repomd.xml 檔案下載不下來,但是使用wget 可以下載。
最後發現時是yum自己的代理設定問題,將其取消掉。
[[email protected]
[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) 修改後安裝出現如下錯誤
[[email protected] 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-Media.repo 在作怪,刪掉,或者重新命名
[[email protected] yum.repos.d]# cd /etc/yum.repos.d
[[email protected] 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 了。
(4)yum 安裝時出現 GPG key retrieval failed: [Errno 14] HTTP Error 404: Not Found 錯誤
命令後加上 --nogpgcheck 選項