RedHat配置yum源

 

起因是安装好RedHat后就准备装一些服务,于是使用yum命令的时候提示说:

This system is not registered to Red Hat Subscription Management.You can use subscription-manager to register.

好嘛,原来是因为RedHat使用yum源需要付费......在网上找了使用CentOS源替换的方法。中途出现几次错误,最后解决了,但具体是哪一步出错又是在哪一步解决,这个暂时还不清楚。先把完整步骤记录下来,按这个操作一遍最后肯定是可以的,就是过程会有点曲折= =。

1.删除redhat自带的yum包

检查是否安装了yum包,如果安装了,显示有哪些包。

rpm -qa | grep yum      (检查是否安装yum包)
rpm -qa | grep yum | xargs rpm -e --nodeps    (不检查依赖,直接删除rpm包)
rpm -qa | grep yum 

2.使用CentOS的包来代替

我的红帽系统版本是7.2,然后我选择的是CentOS7的版本来代替。

镜像地址: http://mirrors.163.com/centos/ 

可以根据系统版本选择对应的软件包进行下载。比如我系统是64,下载的是http://mirrors.163.com/centos/7/os/x86_64/Packages/目录下这五个包:(具体要用到几个包我也不清楚,有的博客说四个包就够了,有的又说需要另外的包。所以我就都下了,有清楚的麻烦在评论区告诉我一下。)

rpm-4.11.3-43.el7.x86_64.rpm
yum-3.4.3-167.el7.centos.noarch.rpm
yum-plugin-fastestmirror-1.1.31-53.el7.noarch.rpm
python-urlgrabber-3.10-10.el7.noarch.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm

使用命令下载:

wget http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-43.el7.x86_64.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-167.el7.centos.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-53.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-10.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm

 安装全部的包:

rpm -ivh rpm-4.11.3-43.el7.x86_64.rpm
rpm -ivh yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
然后相互依赖的包用同一个命令安装:
rpm -ivh yum-3.4.3-167.el7.centos.noarch.rpm yum-plugin-fastestmirror-1.1.31-53.el7.noarch.rpm python-urlgrabber-3.10-10.el7.noarch.rpm

 3.备份原有源并替换

cd /etc/yum.repos.d/

对该目录下的文件redhat.repo进行备份。

然后打开http://mirrors.163.com/.help/centos.html

在/etc/yum.repos.d/目录中下载对应版本的repo文件:

[root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
例如,我下载的是CentOS7-Base-163.repo文件。还需要对文件CentOS7-Base-163.repo进行修改,将其中字符$releasever改为版本号7。

vi CentOS7-Base-163.repo

可以使用全文替换:

:1,$s/$releasever/7

4.重建缓存

yum clean all
yum makecache

正常步骤来讲到这一步其实就大功告成了。但是可能是因为我之前在安装yum包的时候操作太混乱了,在这一步提示说:

bash: /usr/bin/yum: 没有那个文件或目录

所以还需要进行下面的操作:

[root@localhost yum.repos.d]# rpm -ivh --nodeps http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-53.el7.noarch.rpm

[root@localhost yum.repos.d]# rpm -ivh --nodeps http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-53.el7.noarch.rpm

[root@localhost yum.repos.d]# rpm -ivh --nodeps http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm

[root@localhost yum.repos.d]# rpm -ivh --nodeps http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-167.el7.centos.noarch.rpm

再执行yum clean all和yum makecache的时候就可以了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章