• 自建YUM仓库


    YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。

    要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称为yum源。

    网络上有大量的yum源,但由于受到网络环境的限制,导致软件安装耗时过长甚至失败。特别是当有大量服务器大量软件包需要安装时,缓慢的进度条令人难以忍受。

    因此我们在优化系统时,都会更换国内的源。

    相比较而言,本地YUM源服务器最大优点是局域网的快速网络连接和稳定性。有了局域网中的YUM源服务器,即便在Internet连接中断的情况下,也不会影响其他YUM客户端的软件安装和升级。

    1. 搭建yum仓库

    创建yum仓库目录:
    mkdir -p /application/yum/centos7.3/x86_64
    cd /application/yum/centos7.3/x86_64
    
    上传rpm包到此目录,此目录下面还可以包括文件夹:
    [root@yum x86_64]# ll
    总用量 428
    -rw-r--r-- 1 root root  83984 7月   4 2014 deltarpm-3.6-3.el7.x86_64.rpm
    -rw-r--r-- 1 root root 252528 6月  24 2016 libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
    -rw-r--r-- 1 root root  32084 7月   4 2014 python-deltarpm-3.6-3.el7.x86_64.rpm
    -rw-r--r-- 1 root root  59968 11月 21 2016 traceroute-2.0.22-2.el7.x86_64.rpm
    
    安装createrepo软件:
    yum -y install createrepo 
    
    初始化repodata索引文件:
    createrepo -pdo /application/yum/centos7.3/x86_64/ /application/yum/centos7.3/x86_64/
    
    提供yum服务:
    可以用Apache或nginx提供web服务,但用Python的http模块更简单,适用于内网环境
    cd /application/yum/centos7.3/x86_64/
    python -m SimpleHTTPServer 80 &>/dev/null &
    
    添加新的rpm包:
    只下载软件不安装
    yumdownloader pcre-devel openssl-devel #yumdownloader 需要安装yum-utils软件
    每加入一个rpm包就要更新一次:
    createrepo --update /application/yum/centos7.3/x86_64/ 
    

    通过浏览器输入本机IP查看:

    2. yum安装软件时不删除安装包

    /etc/yum.conf配置文件:
    sed -i s'/keepcache=0/keepcache=1/'g /etc/yum.conf 
    
    安装包存储目录:
    /var/cache/yum/x86_64/7/base/packages/
    

    3. 客户端配置

    把之前的epel移除:
    cd /etc/yum.repos.d/
    mkdir yum_bak
    mv * yum_bak
    
    指定使用kyeyum库:
    vim kyeyum.repo 
    [kyeyum] # 指定使用kyeyum库
    name=Server 
    baseurl=http://192.168.182.137 #yum仓库IP
    enable=1 # 启用yum
    gpgcheck=0 #是否检查gpg
    
    
    yum --enablerepo=kyeyum --disablerepo=base,extras,updates,epel list 
    yum list #查看yum仓库的包
    [root@ntopng yum.repos.d]# yum list | less
    已加载插件:fastestmirror
    Loading mirror speeds from cached hostfile
    已安装的软件包
    GeoIP.x86_64                        1.5.0-11.el7                       @anaconda
    NetworkManager.x86_64               1:1.8.0-9.el7                      @anaconda
    NetworkManager-libnm.x86_64         1:1.8.0-9.el7                      @anaconda
    NetworkManager-team.x86_64          1:1.8.0-9.el7                      @anaconda
    可安装的软件包
    deltarpm.x86_64                     3.6-3.el7                          kyeyum   
    libxml2-python.x86_64               2.9.1-6.el7_2.3                    kyeyum   
    openssl-devel.i686                  1:1.0.2k-8.el7                     kyeyum   
    pcre-devel.i686                     8.32-17.el7                        kyeyum   
    python-deltarpm.x86_64              3.6-3.el7                          kyeyum   
    traceroute.x86_64                   3:2.0.22-2.el7                     kyeyum   
    
  • 相关阅读:
    微擎签名出错 invalid signature
    微擎 pdo_fetchall() 函数
    Qt 文本文件的读写操作
    Qt Qlistwidget、Qlistview
    Qt保留小数点后一位、两位……
    Excel怎么快速删除全部空行
    光学镜头参数详解(EFL、TTL、BFL、FFL、FBL/FFL、FOV、F/NO、RI、MTF、TV-Line、Flare/Ghost)
    Image J 介绍
    C# MODBUS协议上位机程序
    C/C++ memmove与memcpy的区别及实现
  • 原文地址:https://www.cnblogs.com/luchuangao/p/8250948.html
Copyright © 2020-2023  润新知