• centos7自建yum源 安装rpm


    如果生产环境需要大规模的安装部署rpm包,每次安装,更新,都需要上传,安装,比较麻烦,可以在生产环境中自建一个yum源。
    1、http安装
    yum -y install httpd http-devel
    service httpd start
    chkconfig httpd on
    2、createrepo安装
    yum -y install createrepo
    3、创建repodata目录
    cd /var/www/html/
    mkdir sinobbdyum/x86_64 -p
    createrepo -p -d -o sinobbdyum/x86_64/ sinobbdyum/x86_64/
    4、把需要发布的安装包存放到repodata目录
    cp ./*.rpm /var/www/html/sinobbdyum/x86_64/
    5、更新发布yum源,由于有新增rpm包需要
    createrepo --update sinobbdyum/x86_64/ #更新本地源
    6、客户端设备上增加repo源文件
    cd /etc/yum.repos.d
    vim sinobbd.repo
    [sinobbd]
    name=sinobbd-yum
    baseurl=http://192.168.0.25/sinobbdyum/x86_64
    gpgcheck=0
    7、测试是否生效
    先清除客户端本地yum数据源缓存,在进行安装
    rpm clean all
    yum install test.rpm

    异常:如果出现
    [root@localhost ~]# createrepo -p -d -o yum/centos/6/x86_64 yum/centos/6/x86_64
    Traceback (most recent call last):
    File "/usr/share/createrepo/genpkgmetadata.py", line 28, in <module>
    import createrepo
    ImportError: No module named createrepo
    ————————————————

    ##nginx安装并配置自动同步

    三、创建索引
    mkdir /opt/yum/centos/7/os/x86_64/
    createrepo /opt/yum/centos/7/os/x86_64/
    四、配置nginx
    server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name _;
    root /opt/yum/centos/7/os/x86_64/; ##这里

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
    ##这里
    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;
    index index.html;
    }

    error_page 404 /404.html;
    location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    }
    }
    五、同步相关包
    1、设置阿里云镜像为本地yum源
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    2、选择指定仓库标识作为本地yum源:
    yum repolist查看yum仓库标识
    3、将阿里云中的epel源同步到本地/opt/yum/centos/7/os/中;第一次同步是时间可能较长,我这里有9911个rpm包。
    reposync -r base -p /opt/yum/centos/7/os/
    脚本自动更新
    vi /root/yum-update.sh
    #!/bin/bash
    datetime=`date +"%Y-%m-%d"`
    exec > /var/log/centosrepo.log
    reposync -d -r base -p /opt/yum/centos/7/os/
    #同步镜像源
    if [ $? -eq 0 ];then
    createrepo --update /opt/yum/centos/7/os/x86_64
    #每次添加新的rpm时,必须更新索引信息
    echo "SUCESS: $datetime epel update successful"
    else
    echo "ERROR: $datetime epel update failed"
    fi

    定时任务:每周二凌晨三点同步yum源
    crontab -e
    0 2 * * 3 /bin/bash /root/yum-update.sh
    4、更新索引
    createrepo --update /opt/yum/centos/7/os/x86_64/
    5、清理缓存数据
    yum clean all && yum makecache
    6、编写repo文件
    vim /etc/yum.repos.d/feiyu-7.repo内容如下
    [feiyu]
    name=centos-feiyu
    baseurl=http://192.168.0.27/centos/releasever/os/basearch/
    enabled=1
    gpgcheck=0


    原文链接:https://blog.csdn.net/bbwangj/article/details/79130243

  • 相关阅读:
    Homestead 安装其它的PHP版本
    Angular调用父Scope的函数
    检测到在集成的托管管道模式下不适用的ASP.NET设置
    IE8不能保存cookie,造成response.redirect死循环的原因
    IE浏览器“自定义安全级别”不能设置的原因
    测试sql server服务是否配置正确
    Sql Server Express 2005提示"failed to generate a user instance of sql server "
    cordova使用Gradle构建下载maven太慢,使用阿里云镜像
    使用Cordova编译Android平台程序提示:Could not reserve enough space for 2097152KB object heap
    Angular动态编译Html
  • 原文地址:https://www.cnblogs.com/lovezhr/p/15939627.html
Copyright © 2020-2023  润新知