Redhat7 安装 yum(换成免费版) 安装gcc
最近上Linux系统基础课程,要在虚拟机上编译运行程序,这时候就需要安装gcc,网上一搜,各种什么在线,离线安装,其中在线安装很方面,一个命令 yum install gcc 即可解决
可我这么输入后,提示yum源未注册,没有启动的源(仓库),无法安装(如下图),正常安装成功的当我没说。
这就难受了,而直接离线装gcc更麻烦。翻了翻书,后面有用到yum,于是我花了两天将yum换成免费的,看了30多篇博客、问答,总结出这篇亲身实践的博客(也方便自己复习查看)。
希望大家别嫌麻烦,网上很多简单的操作难以解决这个问题
开始吧,首先,前提是安装好Linux虚拟机(能连上网络的)
这个前提网上有许多实用的,就不说了(为了这篇,我又去安了一次),开启虚拟机,以root账号登入,在桌面打开终端
第二步:卸载原先的yum(rpm -qa|grep yum|xargs rpm -e --nodeps)
输入rpm -qa |grep yum 确认是否卸载完成(回车后无信息显示)
第三步,下载yum包以及相关依赖文件
这部分有点多,请耐心一点
我用的是网易的镜像网站,http://mirrors.163.com/
访问http://mirrors.163.com/centos/7.6.1810/os/x86_64/Packages/网页
注意:具体地址可能不一样,取决于想要下载的版本,比如我这里选择的是7.6.1810(如下图),个人按照需求选择
找到需要下载的文件
python-iniparse-0.4-9.el7.noarch.rpm
python-urlgrabber-3.10-9.el7.noarch.rpm
yum-3.4.3-161.el7.centos.noarch.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm
利用wget + 文件地址即可下载(也可以网页上直接点击下载)
下好这五个文件(为了方便我都丢到桌面上)
开始安装(rpm -ivh *.rpm 全部安装)
哎呀,发生了错误,错误信息意思是:我缺少了4.11.3-22以上版本的rpm,所以,再回到下原先下yum包的地方,找到对应的rpm,下载
然后先安装这个rpm,注意,直接rpm -ivh无法成功安装,因为老版本的rpm与许多其他程序有着依赖,会导致无法安装新版本
这里使用 rpm -Uvh rpm-4.11.3-35.el7.x86_64.rpm --nodeps 进行升级安装)
同理,下载的两个python文件的也这样进行升级安装
再来尝试安装那三个yum相关文件(由于yum原来的版本被卸载了,所以可以直接rpm -ivh)
(注意,yum-3.4.3-161.el7.centos.noarch.rpm 和yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm相互依赖,一定要同时安装)
到这里yum就算是半完成了,可以试试输入yum看有没反应,正常反应如下图,
如果出现 未找到命令,代表没安装完成,
这时,回头再依次 rpm -ivh yum相关的文件(先安metadata那个,再同时安剩下的两个
rpm -ivh yum-3.4.3-161.el7.centos.noarch.rpm yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm),我这里由于已经安好了,就会提示已经安装
如果出现
这种类似的错误,提示缺啥就到那个网站上去找,找到之后下下来,
rpm -Uvh xxxxxxx.rpm --nodeps升级安装好后,再安装一边报错的文件,直到成功为止
第四步 新建配置.repo文件
输入 vim /etc/yum.repos.d/CentOS-Base.repo 进入Vi编辑模式,复制下列代码内容进去
#CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$7 - Base - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=os
baseurl=http://mirrors.163.com/centos/7/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$7 - Updates - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=updates
baseurl=http://mirrors.163.com/centos/7/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$7 - Extras - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=extras
baseurl=http://mirrors.163.com/centos/7/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$7 - Plus - 163.com
baseurl=http://mirrors.163.com/centos/7/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
一定要复制完整,之后按esc进入命令模式,输入:wq保存并退出
之后yum clean all清除缓存,就可以使用yum了
第五步 安装gcc
yum搞好后,装gcc或者其他工具就很方便了,直接yum install xxxx就能自动安装了
不过中途会提问你是否继续一类的问题,输入y,回车,让它继续安,直到显示 完毕,
显示 完毕!就代表安装完成了
(PS:使用yum安装的好处,就是可以将你所需要的工具和工具依赖的文件都一并下载或者更新,如下所示)
至此, yum和gcc都安装完毕了
来,测试一下 gcc -v
不放心的话还可以再测试一下,随便搞个c语言文件,进行编译并运行
看,成功了!
参考资料:
https://blog.csdn.net/qq_34256348/article/details/78837175(Redhat7 安装 yum 博主亲自安装记录!!!!——燕云幽侠)
https://blog.csdn.net/zhaosenoo/article/details/70919881(RHEL7解决无法使用YUM源问题——zhaosenoo)