起因
之前也写了一篇类似的文章,但感觉有漏洞,这次想直接把漏洞补齐。
问题描述
在我们新装的Centos7中,如果想要用C++编程,那就必须要用到yum下载,但是,很多新手,包括我使用yum下载就会遇到一个问题,当我们输入以下命令时:
yum -y install gcc*
就会报以下错误:
[root@wjx yum.repos.d]# yum grouplist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
There are no enabled repos.
Run "yum repolist all" to see the repos you have.
To enable Red Hat Subscription Management repositories:
subscription-manager repos --enable <repo>
To enable custom repositories:
yum-config-manager --enable <repo>
大致意思是镜像不可用。
可能是因为最近,也就是2024年Centos官方停止更新了Centos,所以外国的yum也跟着会受到影响吧。下面网址是阿里云官方的镜像网,我的解决办法也是在这里面找的:
centos镜像_centos下载地址_centos安装教程-阿里巴巴开源镜像站 (aliyun.com)
因为yum相当于是一个搬运工,让yum下载就相当于是让yum从互联网上搬运数据资料、文件、文档等等。但是新的yum默认是外国的,所以就会出现镜像出错的情况。
为了解决这个问题,就要把yum切换成国内的。
在这里,使用阿里云的镜像:直接在命令行中输入以下命令:
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
以上两个都是一样的,复制一个即可。
就会发现:成功了
然后在命令行中输入
/etc/yum.repos.d
ls
就会发现多了一个Centos-base.repo
至此,yum无法下载的问题到此解决,现在就可以下载C++编译器了
测试一下:
出现了下载进度,所以yum成功!
清理yum缓存
yum clean all
yum makecache
**yum makecache:**这个命令用于重新生成 YUM 缓存。执行该命令后,YUM 会下载软件包清单和元数据,并将其缓存到本地。这样做可以加快后续的软件包查询和安装速度。执行 yum makecache :可以确保你使用的 YUM 源中的最新软件包信息被正确地缓存,以便快速查找和安装软件包。
为了以防万一:
一定要下载一个wget,这个可以保障万一哪天阿里云的镜像又不能用了,可以用这个继续下载新镜像。
输入以下命令
yum install wget -y
主要是怕遇到这种情况:
有一个套娃的bug 刚安装的系统不能用yum,需要wget更换yum源,但是又需要用yum下载wget