起因是安装好RedHat后就准备装一些服务,于是使用yum命令的时候提示说:
This system is not registered to Red Hat Subscription Management.You can use subscription-manager to register.
好嘛,原来是因为RedHat使用yum源需要付费......在网上找了使用CentOS源替换的方法。中途出现几次错误,最后解决了,但具体是哪一步出错又是在哪一步解决,这个暂时还不清楚。先把完整步骤记录下来,按这个操作一遍最后肯定是可以的,就是过程会有点曲折= =。
检查是否安装了yum包,如果安装了,显示有哪些包。
rpm -qa | grep yum (检查是否安装yum包)
rpm -qa | grep yum | xargs rpm -e --nodeps (不检查依赖,直接删除rpm包)
rpm -qa | grep yum
我的红帽系统版本是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
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
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的时候就可以了。