zoukankan      html  css  js  c++  java
  • CentOS yum源设置priority优先查找本地源安装

    CentOS的yum在安装时默认是将/etc/yum.repos.d/目录下.repo后缀文件都查找,然后用找到的第一个源。

    如果安装有网络的源和光盘cdrom的源,在列表中CentOS-Base.repo被先找到,这里是网络源。那么光盘就不会在被安装。

    可以设置文件优先级来让yum先搜索优先级高的,我们设置CentOS-Media.repo文件高,CentOS-Base.repo次之。

    安装yum-priorities 来管理优先级

    [root@Cent0S7 ]yum -y install yum-priorities 

     文件优先级设置,priority=N # N值为1-99,数字越大,优先级越低.(如果repo文件项里不写priority那默认是99,最低。)

     注意:priority=1这个要放到repo文件的项里,和enabled一样;而不是一个repo文件里放一个priority=1,另一个文件放priority=2就是priority=1文件优先级高了.

    以 163.repo和aliyun.repo文件做例子,在[base_aliyun]项下和[base_163]分别放了priority代表,当使用到base里的链接时,优先使用[base_aliyun]项下地址。

    其他项也是一样,当然如果有些链接报错感觉没用,直接在项下加入 enabled=0 关闭此项即可。

    [root@Cent0S7 ~]# vi /etc/yum.repos.d/aliyun.repo
    [base_aliyun]
    name=CentOS-$releasever - Base - mirrors.aliyun.com
    failovermethod=priority
    baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
            http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
            http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
    priority=1
    
    [updates_aliyun]
    name=CentOS-$releasever - Updates - mirrors.aliyun.com
    failovermethod=priority
    baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
            http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
            http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
    
    #additional packages that may be useful
    

      

    [root@Cent0S7 ~]# vi /etc/yum.repos.d/163.repo
    
    [base_163]
    name=CentOS-$releasever - Base - 163.com
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
    baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
    priority=2
    
    [updates_163]
    name=CentOS-$releasever - Updates - 163.com
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo
    =updates
    baseurl=http://mirrors.163.com/centos/$releasever/updates/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7

    启用CentOS-Media 这个光盘源

    [root@Cent0S7 ~]# sed -i 's/enabled=0/enabled=1/g' /etc/yum.repos.d/CentOS-Media.repo 

    安装httpd来测试:

    网络和光盘Iso都设置好,没有设置优先级:

    可以看到 Repository里是base也就是网络的源。

    [root@Cent0S7 yum.repos.d]# yum install httpd                      
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
     * base: mirrors.aliyun.com
     * c7-media: 
     * extras: mirrors.aliyun.com
     * updates: mirrors.aliyun.com
    Resolving Dependencies
    --> Running transaction check
    
    ----   中间略  ---- Dependencies Resolved ===================================================================================================================== Package Arch Version Repository Size ===================================================================================================================== Installing: httpd x86_64 2.4.6-97.el7.centos updates 2.7 M Installing for dependencies: apr x86_64 1.4.8-7.el7 base 104 k apr-util x86_64 1.5.2-6.el7 base 92 k httpd-tools x86_64 2.4.6-97.el7.centos updates 93 k mailcap noarch 2.1.41-2.el7 base 31 k Transaction Summary ===================================================================================================================== Install 1 Package (+4 Dependent packages) Total download size: 3.0 M Installed size: 10 M Is this ok [y/d/N]:

      

    设置优先级后:

    可以看到先搜索c7-media 也就是光盘里 c7-media是repo文件里设置的name可以随意改。

    [root@Cent0S7 yum.repos.d]# yum install httpd                        
    Loaded plugins: fastestmirror, priorities
    Loading mirror speeds from cached hostfile
     * base: mirrors.aliyun.com
     * c7-media: 
     * extras: mirrors.aliyun.com
     * updates: mirrors.aliyun.com
    10867 packages excluded due to repository priority protections
    Resolving Dependencies
    --> Running transaction check
    
    ---- 中间略 ---- Dependencies Resolved ===================================================================================================================== Package Arch Version Repository Size ===================================================================================================================== Installing: httpd x86_64 2.4.6-93.el7.centos c7-media 2.7 M Installing for dependencies: apr x86_64 1.4.8-5.el7 c7-media 103 k apr-util x86_64 1.5.2-6.el7 c7-media 92 k httpd-tools x86_64 2.4.6-93.el7.centos c7-media 92 k mailcap noarch 2.1.41-2.el7 c7-media 31 k Transaction Summary ===================================================================================================================== Install 1 Package (+4 Dependent packages) Total download size: 3.0 M Installed size: 10 M Is this ok [y/d/N]:

     查看列表

    [root@Cent0S7 ]# yum repolist 
    

     统计安装包个数

    [root@Cent0S7 ]# yum list | wc -l
    10498
    

      

     脚本安装:

    [root@Cent0S7 ]# cat <<EOF | sudo tee  yum-localrepo.sh
    #! /bin/bash
    
    mkdir -p /media/cdrom/
    mount /dev/cdrom /media/cdrom/
    
    echo "/dev/cdrom    /mnt/cdrom     iso9660     defaults    0   0" >> /etc/fstab
    sed -i 's/enabled=0/enabled=1/g' /etc/yum.repos.d/CentOS-Media.repo
    echo "priority=1" >> /etc/yum.repos.d/CentOS-Media.repo
    echo "priority=2" >> /etc/yum.repos.d/CentOS-Base.repo
    
    yum -y install yum-priorities
    yum makecache
    EOF
    

      

    执行脚本:

    [root@CentOs7]# sh yum-localrepo.sh 
    

      

    参考:

    http://cnblogs.com/mountain2011/p/10224350.html

    aliyun
  • 相关阅读:
    今晚的比赛(2011.12.4)
    js中prototype,constructor的理解
    laravel中empty(),is_null() 以及isEmpty()
    mysql查询语句and,or
    jquery简易tab切换
    Qt 的QcomboBox的简单使用
    折半查找
    C++强制类型转换(转)
    二叉树学习
    c++的重载,覆盖与隐藏
  • 原文地址:https://www.cnblogs.com/wutou/p/14068187.html
Copyright © 2011-2022 走看看