在使用RHEL7的时候,经常遇到yum源没有注册的问题,老有上图这样的提示,很烦,所以从网上找了些教程试了试,终于把yum源改为了阿里云的。
RHEL的YUM源需要注册用户才能更新使用,由于CentOS和RHEL基本没有区别,并且CentOS已经被REHL收购。所以将RHEL的YUM源替换为CentOS即可。
第一步:清除原有RHEL的YUM及相关软件包:
方法是使用如下命令:
rpm -qa|grep yum|xargs rpm -e --nodeps
rpm -qa|grep python-urlgrabber|xargs rpm -e --nodeps
第二步:下载有关的软件包:
网盘地址:链接:https://pan.baidu.com/s/1Z3hm1LErfI6DYxYAUa3o0Q
提取码:ye4x
第三步:安装软件包
把上面的文件放到/root/目录下,然后依次执行:
rpm -ivh python-iniparse-0.4-9.el7.noarch.rpm
rpm -ivh python-urlgrabber-3.10-8.el7.noarch.rpm
rpm -ivh yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
rpm -ivh yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm yum-3.4.3-158.el7.centos.noarch.rpm
执行第4句的时候有可能出现以下情况:
[root@linuxprobe ~]# rpm -ivh yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm yum-3.4.3-158.el7.centos.noarch.rpm
警告:yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
错误:依赖检测失败:
rpm >= 0:4.11.3-22 被 yum-3.4.3-158.el7.centos.noarch 需要
可以从163的镜像服务器地址(http://mirrors.163.com/centos/7/os/x86_64/Packages/)下载rpm-4.11.3-40.el7.x86_64.rpm ,放到”/root/”目录下。
再在”/root/”目录下执行命令:
rpm -Uvh rpm-4.11.3-40.el7.x86_64.rpm --nodeps
解决rpm的版本问题后再执行上面第4句命令。
第5步:使用以下命令下载阿里云的Centos-7.repo文件,并保存为/etc/yum.repos.d/目录下的CentOS-Base.repo文件。
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
然后看/etc/yum.repos.d/目录下有没有Centos-Base.repo文件,如果有,备份(该文件
中可能有RHEL7的具体版本信息)后删除,避免提示重复。
再用vim将下载的文件中其中的所有$releasever改为当前redhat的版本(具体要根据你的机器确定),我的是7,带“#”的是注释,可以不改,注意url中不能有空格。
第六步:清理yum缓存:
yum clean all
第7步:将服务器软件包信息缓存至本地,提高搜索安装效率:
yum makecache
第8步:测试:
能搜索到软件包信息,说明配置完成:
yum search vim
第9步:执行yum repolist查看:
如果显示出repo仓库列表,并显示软件包数量则OK。(或者使用yum makecache):
yum repolist
至此,RHEL7今后就可以使用阿里云的YUM源了。
最后,可以使用yum安装某个软件包测试:
yum -y install XXXXX
(如果大家在更改yum源的时候遇到initscripts与redhat-release-server-7.0-1.el7.x86_64冲突的问题,请看本博主另一篇文章。)