centos更新报错问题.md

CentOS6 yum 命令报错 YumRepo Error: All mirror URLs are not using ftp, http[s] or file,修改yum源后404 Not Found

据说是因为,CentOS6已经在2020年11月30日停止维护了。centos官方停止了对centos6的所有更新,并且下架了包括官方所有的centos6源,目前阿里、163、清华等centos6源已无法使用。

  • CentOS 6 停止维护更新日期: 2020年11月30日
  • CentOS 7 停止维护更新日期: 2024年6月
  • CentOS 8 停止维护更新日期: 2029年5月

解决办法

  1. 备份repo文件
    1
     cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
    
  2. 编辑repo文件,vim /etc/yum.repos.d/CentOS-Base.repo
    1. 添加如下到末尾:

      1
      2
      3
      4
      5
      6
       [centos-office]
       name=centos-office
       failovermethod=priority
       baseurl=https://vault.centos.org/6.10/os/x86_64/
       gpgcheck=1
       gpgkey=https://vault.centos.org/6.10/os/x86_64/RPM-GPG-KEY-CentOS-6
      
    2. 注释掉 mirrorlist 的设置,打开 baseurl 的设置
    3. baseurlmirror.centos.org 地址替换为 vault.centos.org
  3. 修改完成,执行 yum list 试试

使用 https://vault.centos.org 报错: [Errno 14] problem making ssl connection

  • 现象:

执行 yun list 报ssl错误

1
http://vault.centos.org/centos/6/os/x86_64/repodata/repomd.xml: [Errno 14] problem making ssl connection
  • 原因

http://vault.centos.org 重定向到 https://vault.centos.org

https://vault.centos.org 只支持 TLS v1.2 及以上,

但是 CentOS 6 openssl太老, 不支持 TLS v1.2,

  • 解决办法

使用其他的支持TLSv1.2以下版本的镜像替代 https://vault.centos.org

epel repo 报错: epel-6&arch=x86_64 error was 14: problem making ssl connection

更新 repo 文件

1
2
3
4
5
6
7
8
9
10
11
# バックアップファイル取得
sudo cp -p /etc/yum.repos.d/epel.repo{,_bak}
sudo cp -p /etc/yum.repos.d/epel-testing.repo{,_bak}

# mirrorlistコメントアウト
sudo perl -i -pe 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/epel.repo
sudo perl -i -pe 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/epel-testing.repo

# baseurl差し替え
sudo perl -i -pe 's|#baseurl=http://download.fedoraproject.org/pub/|baseurl=http://archives.fedoraproject.org/pub/archive/|g' /etc/yum.repos.d/epel.repo
sudo perl -i -pe 's|#baseurl=http://download.fedoraproject.org/|baseurl=http://archives.fedoraproject.org/|g' /etc/yum.repos.d/epel-testing.repo