zoukankan      html  css  js  c++  java
  • 为CentOS安装yum源

    今天在安装CentOS 6.10 版本后发现,无法使用yum安装软件。
     
    过程:
    我登录官方网站,看到下载界面里边已经取消了CentOS6的下载链接,我想可能是已经不再支持了。
    当我使用最小安装完毕的CentOS 6.10进行yum安装软件时,会报下边的错误。
     
    [root@localhost ~]# yum install vim -y
    Loaded plugins: fastestmirror
    Setting up Install Process
    Determining fastest mirrors
    YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
    Eg. Invalid release/repo/arch combination/
    removing mirrorlist with no valid mirrors: /var/cache/yum/x86_64/6/base/mirrorlist.txt
    Error: Cannot find a valid baseurl for repo: base
     
    解决:
     我去网上查了一下上边的错误,原因是:更新的repo源里边的地址错误,随后我换成了阿里源云,网易云,都不得行,我手动去登录里边的网址,结果显示已经下架。我就用到了官方的已经下架系统的镜像网站。
    参考:以下教程找到了解决办法
     
     将 /etc/yum.repos.d/CentOS-Base.repo 文件中所有的源主机地址修改为http://vault.centos.org,并且将$releasever替换为当前系统所使用的CentOS版本,可以使用6.x最后的版本6.10。注意,需要将所有其他备用的主机都删除,内容如下:
     vi /etc/yum.repos.d/CentOS-Base.repo

    [base]
    name=CentOS-6.10 - Base - vault.centos.org
    failovermethod=priority
    baseurl=http://vault.centos.org/centos/6.10/os/$basearch/
    gpgcheck=1
    gpgkey=http://vault.centos.org/centos/RPM-GPG-KEY-CentOS-6

    #released updates
    [updates]
    name=CentOS-6.10 - Updates - vault.centos.org
    failovermethod=priority
    baseurl=http://vault.centos.org/centos/6.10/updates/$basearch/
    gpgcheck=1
    gpgkey=http://vault.centos.org/centos/RPM-GPG-KEY-CentOS-6

    #additional packages that may be useful
    [extras]
    name=CentOS-6.10 - Extras - vault.centos.org
    failovermethod=priority
    baseurl=http://vault.centos.org/centos/6.10/extras/$basearch/
    gpgcheck=1
    gpgkey=http://vault.centos.org/centos/RPM-GPG-KEY-CentOS-6

    #additional packages that extend functionality of existing packages
    [centosplus]
    name=CentOS-6.10 - Plus - vault.centos.org
    failovermethod=priority
    baseurl=http://vault.centos.org/centos/6.10/centosplus/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=http://vault.centos.org/centos/RPM-GPG-KEY-CentOS-6

    #contrib - packages by Centos Users
    [contrib]
    name=CentOS-6.10 - Contrib - vault.centos.org
    failovermethod=priority
    baseurl=http://vault.centos.org/centos/6.10/contrib/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=http://vault.centos.org/centos/RPM-GPG-KEY-CentOS-6

     
     
     
     确认在 /etc/yum.repos.d/目录没有除了CentOS-Base.repo之外其他以repo结尾的文件,如果有的话需要删除,然后执行 yum clean all && yum makecache 更新和启用新的yum源。
     

    因为http://vault.centos.org/的服务器在国外,在国内进行更新的时候非常慢,而且经常会出现超时的错误,因此需要自己做一个本地的源。如何同步在http://vault.centos.org/readme.txt中有详细的说明,创建一个需要同步的目录,然后执行下面的命令即可自动同步:

    rsync -a -v --exclude=debug --exclude=i386 rsync://archive.kernel.org/centos-vault/6.10/ /data/centos-vault/6.10/

    上面将i386去除,是因为我用的是64位的系统,具体根据自己的情况进行设置。

    默认情况下rsync是在前台运行的,在命令最后加&也无效,可以采用下面的步骤将其转为后台运行:
    (1)运行上面的rsync命令;
    (2)在运行的时候按 Ctrl+Z,这个时候会暂停上面的命令;
    (3)输入bg并回车,这个时候就将rsync转移到后台运行了。

    可以输入jobs命令查看后台正在运行的任务。可以在命令行后面加--progress参数查看正在运行的进度,如下图:

    第一次运行之后的时间非常长,可以通过查看进度来查看其完成的情况,如果第一次完成之后可以将rsync命令加入到定时任务中,如下表示每天凌晨1点钟自动进行同步更新:

    0 1 * * * /usr/bin/rsync -a -v --exclude=debug --exclude=i386 rsync://archive.kernel.org/centos-vault/6.10/ /data/centos-vault/6.10/ || echo "rsync died with error code $?" >> /var/log/rsync-centos-vault.log

    后面的echo可以记录当执行出现错误的时候将错误码写入到日志文件里面。

    PS:因为镜像会占用大量的硬盘空间,如果在文件中使用软链接的话,需要增加-L -K参数,前者会在同步的时候考虑到软链接,后者会在同步的时候保持软链接的状态,否则会删除软链接。

     
     
  • 相关阅读:
    OleDbCommand 的用法
    递归求阶乘
    C#重写窗体的方法
    HDU 5229 ZCC loves strings 博弈
    HDU 5228 ZCC loves straight flush 暴力
    POJ 1330 Nearest Common Ancestors LCA
    HDU 5234 Happy birthday 01背包
    HDU 5233 Gunner II 离散化
    fast-IO
    HDU 5265 pog loves szh II 二分
  • 原文地址:https://www.cnblogs.com/jianchen013/p/14091461.html
Copyright © 2011-2022 走看看