RedHat6.7切换yum源,很详细,为防止地址失效,给大家提供查找的方法。

引言:redhat自带的yum源好像是需要注册还是什么的,也没有做过详细的了解,这里对大家讲解的是切换CentOS的yum源,自己在网上看到了很多这样的文章,但是不是地址失效就是造成系统命令都无法执行了。

所以在此自己总结了一下,分享给大家。

首先,为大家提供三个镜像站:

网易镜像站的地址:http://mirrors.163.com/
CentOS镜像站地址:http://mirror.centos.org/
阿里云镜像站地址:https://opsx.alibaba.com/mirror/

无论是我们下载的yum包,还是通过yum命令下载的包,一般的话都是这两个镜像站的资源。在后面我们修改yum的配置文件时会切换到这两个镜像地址。希望大家记下这两个地址,想查询一些依赖包时可去这里查询。

其次,为大家讲下切换yum源的方法,以及要注意的东西,没有什么地址会永久不变的,所以网上有很多文章中的地址都已经失效了。如果原封不动的去搬过来只能导致系统出错,所以在这里我要跟大家讲下怎么避免这个错误。

先确认地址是否失效:把我下面提供的地址先粘贴到浏览器中,看看是否会出现下载页面,如果出现则证明没有失效,如果出现404,不用说已经失效了。

那失效了,怎么找呢?这就用到了上面这两个地址了,通过自己系统的版本与系统位数(32/64)来网站上自己查找。

选择版本:可能你的系统版本是6.7,但是发现镜像站中6.7的链接里没有包,那么就去找大版本的包,也就是说去6.0或者6的链接中区寻找。

如果不知道版本信息,请参考:https://blog.csdn.net/qq_36007926/article/details/88713879

  • 这里是163镜像站的部分截图,点击centos就可以选择版本了。


 

接下来,进入正题,切换yum源

这里是我为大家提供的yum所需要的包的地址:

1.下载yum所需要的包

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-81.el6.centos.noarch.rpm
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-41.el6.noarch.rpm

2.检查系统自带的yum包
    rpm -qa |grep yum
3.删除自带包
    rpm -aq | grep yum | xargs rpm -e --nodeps    
4.再检查一下
    rpm -qa |grep yum    
5.执行安装
    rpm -ivh yum-*    

如果这里执行报错的话

[root@redhat67 lib]# rpm -ivh yum-*
    warning: yum-3.2.29-81.el6.centos.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
    error: Failed dependencies:
        python-urlgrabber >= 3.9.1-10 is needed by yum-3.2.29-81.el6.centos.noarch
[root@redhat67 lib]#

说明你需要更新python-urlgrabber的版本,我们先前已经下载完成了直接更新就可以了
    rpm -Uvh python-urlgrabber-3.9.1-11.el6.noarch.rpm

然后在执行

    rpm -ivh yum-*    
6.下面修改yum的配置文件(这里需要在镜像站下载一个配置文件CentOS6-Base-163.repo)
    cd /etc/yum.repos.d/
    mv redhat.repo redhat.repo.bak
    mv rhel-source.repo rhel-source.repo.bak
    wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
    vi CentOS6-Base-163.repo

配置文件中需要去检查一下地址是否有效,在我下方标记红色的地方是需要修改的,蓝色的地方是需要查看是否有效的。

配置文件中标记红色的url中的“$releasever”是需要修改为你系统的版本的与上面查找版本类似,修改完成后,粘贴在浏览器中查看时候有效。粘贴是请不要粘贴“$basearch/”因为这个是你的版本号。

如果下载配置文件CentOS6-Base-163.repo的地址失效的话,就手动添加。

7.清理缓存
    yum clean all
8.将服务器上的软件包信息下载到现在本地缓存,以提高 搜索 安装软件的速度
    yum makecache

如果这步报错的话,查看错误信息,如果发现

    Determining fastest mirrors

    http://mirrors.163.com/centos/%24releasever/os/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
    Trying other mirror.
    To address this issue please refer to the below knowledge base article 

    https://access.redhat.com/articles/1320623

    If above article doesn't help to resolve this issue please open a ticket with Red Hat Support.

    Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

这样的错误信息,请仔细查询配置文件,看是否有哪里忘记修改了。
9.验证
    yum install telnet

  • 这里是手动添加配置文件的内容

# 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-$releasever - Base - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#released updates 
[updates]
name=CentOS-$releasever - Updates - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

到这里就已经给大家介绍完成了,大家有什么问题的话,或者我哪里写错的话,希望大家评论出来,我们再慢慢探讨,谢谢大家!

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