• Centos7系统安装yum遇到的问题failure: repodata/repomd.xml from base: [Errno 256] No more mirrors to try. http: (中断yum或者换yum源出问题)


    问题所在

    [root@cit-server6-s1-372 yum.repos.d]# yum makecache
    Loaded plugins: fastestmirror
    base                                                                     | 5.6 kB  00:00:00     
    http://mirrors.163.com/centos/7/os/x86_64/repodata/repomd.xml: [Errno -1] Error importing repomd.xml for base: Damaged repomd.xml file
    Trying other mirror.
    
    
     One of the configured repositories failed (CentOS-7 - Base - 163.com),
     and yum doesn't have enough cached data to continue. At this point the only
     safe thing yum can do is fail. There are a few ways to work "fix" this:
    
         1. Contact the upstream for the repository and get them to fix the problem.
    
         2. Reconfigure the baseurl/etc. for the repository, to point to a working
            upstream. This is most often useful if you are using a newer
            distribution release than is supported by the repository (and the
            packages for the previous distribution release still work).
    
         3. Disable the repository, so yum won't use it by default. Yum will then
            just ignore the repository until you permanently enable it again or use
            --enablerepo for temporary usage:
    
                yum-config-manager --disable base
    
         4. Configure the failing repository to be skipped, if it is unavailable.
            Note that yum will try to contact the repo. when it runs most commands,
            so will have to try and fail each time (and thus. yum will be be much
            slower). If it is a very temporary problem though, this is often a nice
            compromise:
    
                yum-config-manager --save --setopt=base.skip_if_unavailable=true
    
    failure: repodata/repomd.xml from base: [Errno 256] No more mirrors to try.
    http://mirrors.163.com/centos/7/os/x86_64/repodata/repomd.xml: [Errno -1] Error importing repomd.xml for base: Damaged repomd.xml file
    [root@cit-server6-s1-372 yum.repos.d]# 

    主要问题在于yum源问题。

     

     最直接最暴力的方法

    直接备份删除/etc/yum.repo.d/路径下所有repo文件,
    然后从另一台正常运行的服务器上,拷贝CentOS-Base.repo内容到/etc/yum.repos.d/目录下,
    重命名(可忽略此步骤)文件为centos.repo,然后重新执行yum安装、更新命令,正常可用。

      

     不然参考下面解决办法

    下面开始解决问题:

     

    下面这一段参考博客:https://blog.csdn.net/shaoqiufeng/article/details/78785806

    1. 查看centos7.2系统本身所安装的yum依赖包

    [root@zf-test-web01-4 ~]# rpm -qa|grep yum
    yum-plugin-fastestmirror-1.1.31-34.el7.noarch
    yum-metadata-parser-1.1.4-10.el7.x86_64

    yum-3.4.3-132.el7.centos.0.1.noarch

    2. 卸载这些软件包

    [root@zf-test-web01-4 ~]# rpm -e yum-plugin-fastestmirror-1.1.31-34.el7.noarch --nodeps
    warning: /etc/yum/pluginconf.d/fastestmirror.conf saved as /etc/yum/pluginconf.d/fastestmirror.conf.rpmsave
    [root@zf-test-web01-4 ~]# rpm -e yum-metadata-parser-1.1.4-10.el7.x86_64 --nodeps
    [root@zf-test-web01-4 ~]# rpm -e yum-3.4.3-132.el7.centos.0.1.noarch --nodeps
    [root@zf-test-web01-4 ~]# 

    3. 进入centos镜像网站找到自己对应系统需要的yum包

        查看系统的命令:

    [root@zf-test-web01-4 ~]# cat /etc/redhat-release
    CentOS Linux release 7.2.1511 (Core) 

       查看系统的位数:

    [root@zf-test-web01-4 ~]# file /bin/ls
    /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aa7ff68f13de25936a098016243ce57c3c982e06, stripped

    4.下载yum依赖包

    wget http://vault.centos.org/7.2.1511/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-34.el7.noarch.rpm
    wget http://vault.centos.org/7.2.1511/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
    wget http://vault.centos.org/7.2.1511/os/x86_64/Packages/yum-3.4.3-132.el7.centos.0.1.noarch.rpm

    5. 安装yum依赖包
    [root@zf-test-web01-4 ~]# rpm -ivh yum-*
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:yum-metadata-parser-1.1.4-10.el7 ################################# [ 33%]
       2:yum-plugin-fastestmirror-1.1.31-3################################# [ 67%]
       3:yum-3.4.3-132.el7.centos.0.1     ################################# [100%]

    [root@zf-test-web01-4 ~]# 

    6. 更新centos系统的repo文件

     

    (-----------------------------------------------------

     

    http://mirrors.ustc.edu.cn/help/centos.html(这个很有用)

    http://mirrors.163.com/.help/centos.html(这个我尝试了,不能正常使用)

    这两个网址先写下来,后面要用,很重要!

    ------------------------------------------------------)

    1)首先备份一下,免得误操作 /etc/yum.repos.d/CentOS-Base.repo

     

    http://mirrors.ustc.edu.cn/help/centos.html    现在这个网址用上了,可以说厉害了

    什么?中科大校园网址?没错!

    [root@zf-test-web01-4 yum.repos.d]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

    2)选择对应版本的 /etc/yum.repos.d/CentOS-Base.repo文件, 放入/etc/yum.repos.d/   操作前请做好相应备份

    如本人centos版本为7,所以使用版本7的内容。


     

     

    拷贝上面这些内容,粘贴到yum.repos.d/CentOS-Base.repo里面。

    3)运行以下命令生成缓存
    [root@zf-test-web01-4 yum.repos.d]# yum clean all
    Loaded plugins: fastestmirror
    Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
    Cleaning repos: base extras updates
    Cleaning up everything
    Cleaning up list of fastest mirrors
    [root@zf-test-web01-4 yum.repos.d]# yum makecache
    Loaded plugins: fastestmirror
    base                                                             | 3.6 kB  00:00:00     
    extras                                                           | 3.4 kB  00:00:00     
    updates                                                          | 3.4 kB  00:00:00     
    (1/12): base/7/x86_64/group_gz                                   | 156 kB  00:00:00     
    (2/12): base/7/x86_64/filelists_db                               | 6.7 MB  00:00:01     
    (3/12): extras/7/x86_64/prestodelta                              |  71 kB  00:00:00     
    (4/12): extras/7/x86_64/primary_db                               | 145 kB  00:00:00     
    (5/12): extras/7/x86_64/filelists_db                             | 528 kB  00:00:00     
    (6/12): extras/7/x86_64/other_db                                 |  97 kB  00:00:00     
    (7/12): updates/7/x86_64/prestodelta                             | 589 kB  00:00:00     
    (8/12): base/7/x86_64/primary_db                                 | 5.7 MB  00:00:01     
    (9/12): base/7/x86_64/other_db                                   | 2.5 MB  00:00:00     
    (10/12): updates/7/x86_64/primary_db                             | 4.5 MB  00:00:00     
    (11/12): updates/7/x86_64/other_db                               | 490 kB  00:00:00     
    (12/12): updates/7/x86_64/filelists_db                           | 2.7 MB  00:00:01     
    Determining fastest mirrors

    Metadata Cache Created

    7. 尝试使用yum install vim能否成功安装。

    8.如果还有问题就执行以下几个命令:

    https://blog.csdn.net/orangleliu/article/details/40588799

     

    参照网上的做法: (一般yum有变更都需要这两个操作)

    yum clean all
    yum clean metadata
    yum update
     

    9.所有的错误基本都ok了,突然感觉牛逼了,有木有?

     

    当然看到有朋友这样留言,解决上面的所有问题。我没有试过这个问题能不能这样解决。这个方法看起来比较简单,遇到同样问题的朋友,可以先尝试这种方法,试试有没有作用。

  • 相关阅读:
    suse12安装详解
    Centos7上部署openstack mitaka配置详解(将疑难点都进行划分)
    菜鸟帮你跳过openstack配置过程中的坑[文末新添加福利]
    openstack中dashboard页面RuntimeError: Unable to create a new session key. It is likely that the cache is unavailable.
    Multiple network matches found for name 'selfservice', use an ID to be more specific.报错
    查看 SELinux状态及关闭SELinux
    SELinux深入理解
    IP地址、子网掩码、网络号、主机号、网络地址、主机地址
    Oracle job procedure 存储过程定时任务
    POI文件导出至EXCEL,并弹出下载框
  • 原文地址:https://www.cnblogs.com/xiangshihua/p/13252835.html
Copyright © 2020-2023  润新知