公司提供的CentOS VM中,/etc/yum.repos.d 下 只有一個build.repo,其中提供的yum 源只有公司內(nèi)部的幾個源,很多包在這些源中都找不到。于是要添加別的源,下面的帖子中介紹了如何在CentOS中添加中科大、搜狐和163的yum源:。
本文章介紹的yum源支持的版本是CentOS 6系列,理論上支持RHEL6系列。
更新方法如下:
先進入yum源配置目錄
cd /etc/yum.repos.d
備份系統(tǒng)自帶的yum源
mv CentOS-Base.repo CentOS-Base.repo.save
下載其他更快的yum源
中科大的yum源:
wget http://centos.ustc.edu.cn/CentOS-Base.repo
163的yum源:
wget http://mirrors.163.com/.help/CentOS-Base-163.repo
sohu的yum源
wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo
更新完yum源后,建議更新一下,使操作立即生效
yum makecache
[yasi]:
在執(zhí)行最后一步,即yum makecache的時候,遇到錯誤:
Loaded plugins: fastestmirror
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Repository contrib is listed more than once in the configuration
Loading mirror speeds from cached hostfile
* addons: mirrors.163.com
* base: mirror.metrocast.net
* extras: mirror.beyondhosting.net
* fasttrack: centos.vipernetworksystems.com
* updates: centos.vipernetworksystems.com
http://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替換之,或者把相應(yīng)的.repo文件中的項整個注釋掉。這里我采用后者。
例如,在CentOS-Base-163.repo中,注釋掉整個addon項
#[addons]
#name=CentOS-$releasever - Addons - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$releaseverarch=$basearchrepo=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中注釋掉下面的內(nèi)容
#[addons]
#name=CentOS-$releasever - Addons - sohu.com
#mirrorlist=http://mirrorlist.centos.org/?release=$releaseverarch=$basearchrepo=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
然后,再執(zhí)行yum makecache。之后,yum就可以找到我要安裝的包了,比如gdb, subversion, gcc-c++ 等。
注意:
有時用yum list xxx找不到某個包,可用嘗試用yum search xxx。
如,yum list vim 就報告 Error: No matching Packages to list。而 yum search vim 則返回:
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System
vim-common.x86_64 : The common files needed by any version of the VIM editor
vim-enhanced.x86_64 : A version of the VIM editor which includes recent enhancements
vim-minimal.x86_64 : A minimal version of the VIM editor