yum使用报错:Cannot find a valid baseurl for repo: base/$releasever/x86_64
背景
项目有几台机器(centos7)时间不准,为了让时间能够定时同步,需要安装ntpdate。然而,我在使用yum安装ntpdate的时候却报错了:
原因分析
看到这里我第一反应是centos的yum源有问题。
首先我试了下本机是否能ping外网,结果是可以的。
然后我去网上找了一圈解决此类问题的文章,尝试解决这个问题。
网上主要介绍的是修改/etc/yum.repos.d/下的yum源配置,或者说是修改本地dns解析文件(resolve.cnf),实际上都无法解决。
换个思路
既然这个yum源有问题,是不是我换一个其它好的yum源就可以了?想到这里我就尝试更换成阿里云centos7的yum源。
更换阿里云yum源
备份原yum源
#修改系统配置一定要先备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下载阿里云的镜像源
#阿里云centos7的yum源:http://mirrors.aliyun.com/repo/Centos-7.repo #阿里云centos6的yum源:http://mirrors.aliyun.com/repo/Centos-6.repo wget -O /etc/yum.repos.d/Centos-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
重新生成缓存
#清除缓存
yum clean all #重新生成缓存 yum makecache
报错&解决
这里原因是因为没有安装centos-release这个包,执行:
所以我们暂时把所有的$releasever替换成7。
打开/etc/yum.repos.d/CentOS-Base.repo,如下图:
安装centos-release
1)执行如下命令
yum install -y centos-release
2)查询是否安装成功
rpm -q centos-release
如图,此时已经安装成功,那我们可以把原来的/etc/yum.repos.d/CentOS-Base.repo中的7改回$releasever了。
重新下载阿里云yum源
wget -O /etc/yum.repos.d/Centos-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
到这里yum安装package的问题就彻底解决了。
博主:测试生财(一个不为996而996的测开码农)
座右铭:专注测试开发与自动化运维,努力读书思考写作,为内卷的人生奠定财务自由。
内容范畴:技术提升,职场杂谈,事业发展,阅读写作,投资理财,健康人生。
csdn:https://blog.csdn.net/ccgshigao
博客园:https://www.cnblogs.com/qa-freeroad/
51cto:https://blog.51cto.com/14900374
微信公众号:测试生财(定期分享独家内容和资源)