zoukankan      html  css  js  c++  java
  • (转)搭建企业内部yum仓库(centos6+centos7+epel源)

    搭建企业内部yum仓库(centos6+centos7+epel源)

    原文:https://www.cnblogs.com/nulige/p/6081192.html

    https://www.linuxidc.com/Linux/2017-11/148723.htm---------部署yum仓库与定制rpm包

    1. 创建yum仓库目录
    mkdir -p /data/yum_data/
    cd /data/yum_data/
    #可以上传rpm包到此目录,此目录下面还可以包括文件夹

    2. 安装createrepo软件
    yum -y install createrepo


    3. 初始化repodata索引文件
    createrepo -pdo /data/yum_data/ /data/yum_data/

    4. 提供yum服务
    # 可以用Apache或nginx提供web服务,适用于内网环境
    基于HTTP的yum源配置
    安装apache软件
    # yum install -y httpd


    修改配置文件/etc/httpd/conf/httpd.conf:
    将默认的www目录指向本地创建的yum仓库目录


    DocumentRoot "/data/yum_data/"
    <Directory "/data/yum_data/">
    修改/usr/local/yumrepo目录的属主和属组为apache
    # chown -R apache.apache /data/yum_data/
    删除默认主页
    # rm /etc/httpd/conf.d/welcome.conf


    重启服务:
    # service httpd restart
    可以通过浏览器输入本机IP查看。

    5. 添加新的rpm包


    # 只下载软件不安装
    yumdownloader pcre-devel openssl-devel 
    createrepo --update /data/yum_data/
    # 每加入一个rpm包就要更新一下。
    平时yum安装软件时不删除安装包

    # sed -i "s#keepcache=0#keepcache=1#g" /etc/yum.conf
    [root@node5 yum_data]# grep keepcache /etc/yum.conf
    keepcache=1
    # 安装包存储目录
    cachedir=/var/cache/yum/$basearch/$releasever
    # /var/cache/yum/x86_64/6/base/packages


    6. 客户端配置

    # cd /etc/yum.repos.d

    [root@B yum.repos.d]# vi localyum.repo

    centos6.X

    [localyum]
    name=centos6
    baseurl=http://192.168.3.85/centos/6/os/x86_64/
    enable=1
    gpgcheck=0


    [localepel]
    name=epel
    baseurl=http://192.168.3.85/epel/6/x86_64/
    enable=1
    gpgcheck=0


    [localextra]
    name=extra
    baseurl=http://192.168.3.85/centos/6/extras/x86_64/
    enable=1

    gpgcheck=0

    centos7

    [localyum]
    name=centos7
    baseurl=http://192.168.3.15/centos/7/os/x86_64/
    enable=1
    gpgcheck=0

    [localepel]
    name=epel
    baseurl=http://192.168.3.15/epel/7/x86_64/
    enable=1
    gpgcheck=0


    [localextra]
    name=extra
    baseurl=http://192.168.3.15/centos/7/extras/x86_64/
    enable=1
    gpgcheck=0

    [root@YUM ~]# yum --enablerepo=localyum --disablerepo=base,extras,updates,epel list 
    # 指定使用localyum库
    上面是临时使用内网yum源,想永久并简单使用yum -y install lrzsz命令,就需要修改配置文件将默认的repo文件关闭。

    # cd /etc/yum.repos.d/
    # vim CentOS-Base.repo
    # 在每一个启动的源加上
    # enabled=0   #改为1就启用,没有此参数也是启用。
    [base]
    …………
    enabled=0
    [updates]
    …………
    enabled=0
    [extras]
    …………
    enabled=0

    # 还有其他开启的仓库就使用这个办法关闭。

    7. 镜像yum源

    上面只是将自己制作的rpm包,放入yum源。但还有一种企业需求,说的更具体一点,平时大家yum安装软件都是从公网下载的,占用带宽,因此在学校里搭建一个内网yum服务器,但又考虑到如果yum软件的数据库文件repodata不一样,就会有问题。因此我想到的解决方法就是直接使用公网yum源的repodata。


    镜像同步公网yum源
    上游yum源必须要支持rsync协议,否则不能使用rsync进行同步。
    http://mirrors.ustc.edu.cn/status/
    CentOS官方标准源:rsync://mirrors.ustc.edu.cn/centos/
    epel源:rsync://mirrors.ustc.edu.cn/epel/
    同步命令:
    # 使用rsync同步yum源,为了节省带宽、磁盘和下载时间,我只同步了CentOS6的rpm包,这样所有的rpm包只占用了21G,全部同步需要300G左右。
    # 同步base源,小技巧,我们安装系统的光盘镜像含有部分rpm包,大概3G,这些就不用重新下载。


    mkdir -p /data/yum_data/centos/6/os/x86_64/
    mkdir -p /data/yum_data/centos/6/extras/x86_64/
    mkdir -p /data/yum_data/centos/6/updates/x86_64/
    mkdir -p /data/yum_data/epel/6/x86_64/


    /usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/os/x86_64/ /data/yum_data/centos/6/os/x86_64/
    /usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/extras/x86_64/ /data/yum_data/centos/6/extras/x86_64/
    /usr/bin/rsync -av rsync://mirrors.ustc.edu.cn/centos/6/updates/x86_64/ /data/yum_data/centos/6/updates/x86_64/
    # epel源
    /usr/bin/rsync -av --exclude=debug rsync://mirrors.ustc.edu.cn/epel/6/x86_64/ /data/yum_data/epel/6/x86_64/


    报错:
    # rsync: getaddrinfo: mirrors.ustc.edu.cn 873: Name or service not known
    解决:
    DNS无法解析,添加移动DNS
    # echo "nameserver 120.196.165.7" >> /etc/resolv.conf 
    [root@node5 ~]# cat /etc/resolv.conf 
    nameserver 120.196.165.7


    # 可以自建一个内网dns,如果没有,可使用hosts解析。
    echo '192.168.0.200 mirrors.aliyun.com' >>/etc/hosts
    结果展示
    [root@KVM data]# du -sh yum_data    
    21G     yum_data
    # tree -L 3 yum_data/
    yum_data/
    ?..?€ centos
        ?..?€ 6
            ?..?€ os


    3 directories, 0 files


    问题:
    出现乱码
    解决:
    修改shell链接工具的编码即可


    [root@node5 data]# ll
    total 20
    drwx------. 2 root root 16384 Apr 30 02:02 lost+found
    drwxr-xr-x  3 root root  4096 Apr 29 22:14 yum_data
    # tree -L 3 /data/yum_data/
    /data/yum_data/
    ├── centos
    │   └── 6
    │       ├── extras
    │       ├── os
    │       └── updates
    ├── epel
    │   └── 6
    │       └── x86_64
    ├── openssl-devel-1.0.1e-48.el6_8.1.i686.rpm
    ├── openssl-devel-1.0.1e-48.el6_8.1.x86_64.rpm
    ├── pcre-devel-7.8-7.el6.i686.rpm
    ├── pcre-devel-7.8-7.el6.x86_64.rpm
    └── repodata
        ├── 3d8df379a070a4ce2210b07832cd77277ca5599eca5ebd45879d3804f880e5ae-primary.xml.gz
        ├── 4da6ab1317423ae003399f69c74825ff5dfa5a60f02affe2fde847c1e22d4dbe-other.xml.gz
        ├── 792cd476fb7313187d566fd6b34188cc5d29a84b2103999d4aefd605607658bf-primary.sqlite.bz2
        ├── 832371bc09cda2d8b0eb2537c3d7383ceae150ac6f18adc136ba941733c1bcb3-filelists.sqlite.bz2
        ├── a006cc9bb797f9c972e5c55c99949191dcbbe617ac271f6cefe5e4efdaebef62-filelists.xml.gz
        ├── bf40c2cd7e29e3ca95a5a8fe9d13d0c7b4949bc92d5a9cfe1e844320b0e426b3-other.sqlite.bz2
        └── repomd.xml


    9 directories, 11 files
    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/reblue520/article/details/52042549
  • 相关阅读:
    warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
    Windows10+CLion+OpenCV4.5.2开发环境搭建
    Android解决部分机型WebView播放视频全屏按钮灰色无法点击、点击全屏白屏无法播放等问题
    MediaCodec.configure Picture Width(1080) or Height(2163) invalid, should N*2
    tesseract
    Caer -- a friendly API wrapper for OpenCV
    Integrating OpenCV python tool into one SKlearn MNIST example for supporting prediction
    Integrating Hub with one sklearn mnist example
    What is WSGI (Web Server Gateway Interface)?
    Hub --- 机器学习燃料(数据)的仓库
  • 原文地址:https://www.cnblogs.com/liujiacai/p/8915813.html
Copyright © 2011-2022 走看看