当使用yum命令安装xx时,出现“Cannot find a vaild baseurl for repo:base”的错误,通常意为着yum源配置不正确或网络连接问题。
一、普通方法
1、检查网络连接
使用ping命令,测试是否可以ping通公网,如百度(www.baidu.com)。若不可以检查网络配置、网关、DNS服务器。
2、检查yum源是否配置成功
检查如图下所示文件有无被损坏,若有问题,尝试备份原始文件后,去阿里云或其他源网站下载新的CentOS-Base.repo文件替换。
repo文件示例。
[myrepo]
name=My Repository
baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
3、清理yum缓存
运行yum clean all命令清理yum缓存,然后重新生成缓存。
yum clean all
yum makecache
二、极端方法
若以上方法都解决不了,可以尝试重装yum,但这种方法谨慎使用。
1、查看yum安装包
rpm -qa | grep yum
yum-plugin-fastestmirror-1.1.31-52.el7.noarch
yum-metadata-parser-1.1.4-10.el7.x86_64
yum-utils-1.1.31-52.el7.noarch
2、将其全部卸载
rpm -e yum-plugin-fastestmirror-1.1.31-52.el7.noarch --nodeps
rpm -e yum-metadata-parser-1.1.4-10.el7.x86_64 --nodeps
rpm -e yum-utils-1.1.31-52.el7.noarch --nodeps
3、下载相关依赖包
(1)推荐网站Index of /7.9.2009/os/x86_64/Packages,下载如下包。
libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
python-ipaddress-1.0.16-2.el7.noarch.rpm
lvm2-python-libs-2.02.185-2.el7.x86_64.rpm
python-kitchen-1.1.1-5.el7.noarch.rpm
yum-3.4.3-163.el7.centos.noarch.rpm
python-2.7.5-86.el7.x86_64.rpm
python-libs-2.7.5-86.el7.x86_64.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm
python-pycurl-7.19.0-19.el7.x86_64.rpm
yum-plugin-aliases-1.1.31-52.el7.noarch.rpm
python-chardet-2.2.1-3.el7.noarch.rpm
python-setuptools-0.9.8-7.el7.noarch.rpm
yum-plugin-fastestmirror-1.1.31-52.el7.noarch.rpm
python-devel-2.7.5-86.el7.x86_64.rpm
python-urlgrabber-3.10-9.el7.noarch.rpm
yum-plugin-protectbase-1.1.31-52.el7.noarch.rpm
python-iniparse-0.4-9.el7.noarch.rpm
rpm-python-4.11.3-40.el7.x86_64.rpm
yum-utils-1.1.31-52.el7.noarch.rpm
(2)若找依赖包太麻烦,可以使用Ctrl+F 快捷组合键寻找 。
(3) 安装完成后,将这些包放入同一个文件夹,拉入虚拟机内。
使用命令执行。
rpm -Uvh --replacepkgs lvm2-python-libs*.rpm --nodeps --force
rpm -Uvh --replacepkgs libxml2-python*.rpm --nodeps --force
rpm -Uvh --replacepkgs python*.rpm --nodeps --force
rpm -Uvh --replacepkgs rpm-python*.rpm yum*.rpm --nodeps --force