• 构建局域网YUM仓库


    • 修改yum源为阿里云源
    • 检验阿里云源是否正常
    yum repolist
    
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
     * base: mirrors.aliyun.com
     * extras: mirrors.aliyun.com
     * updates: mirrors.aliyun.com
    
    • 安装相关软件
    yum install  wget gcc* createrepo yum-utils -y
    
    - yum-utils			  reposync同步工具
    - createrepo 			编辑yum库工具
    - plugin-priorities	  控制yum源更新优先级工具
    
    • 创建本地目录
    mkdir -p /mirror/7
    同步到本地目录
    reposync -p /mirror/7			# 同步整个源使用这个
    reposync -r base -p /mirror/7	# 这里同步base目录到本地
    注:系统自动创建相关目录,并下载,时间较长请耐心等待。可以用  repo -r --repoid=repoid指定要查询的repo id,可以指定多个
    更新新的rpm包
    
    reposync -np /mirror/7
    创建索引
    createrepo -po /mirror/7/base/ /mirror/7/base/
    createrepo -po /mirror/7/extras/ /mirror/7/extras/
    createrepo -po /mirror/7/updates/ /mirror/7/updates/
    更新源数据
    createrepo --update /mirror/7/base
    createrepo --update /mirror/7/extras
    createrepo --update /mirror/7/updates
    
    • 创建定时任务脚本
    vim /mirror/7/script/centos_yum_update.sh
    
    #!/bin/bash
    DATE=$(date +%F)
    LogFile=/var/log/aliyumrepo_${DATE}.log
    function log_error() {
        echo -e "33[31m [ERROR] $@ 33[0m"
        echo "ERROR $@"  >> $LogFile
    }
    function log_info() {
        echo -e "33[32m [INFO] $@ 33[0m"
        echo "INFO $@"  >> $LogFile
    }
    function log_warn() {
        echo -e "33[33m [WARN] $@ 33[0m"
        echo "WARN $@"  >> $LogFile
    }
    log_info "${DATE} 正在同步..."
    reposync -np /mirror/7 &>/dev/null
    if [ $? -eq 0 ];then
        createrepo --update /mirror/7/base
        createrepo --update /mirror/7/extras
        createrepo --update /mirror/7/updates
        log_info "${DATE} aliyum_yum update successful"
    else
        log_error "${DATE} aliyum_yum update failed"
    fi 
    
    • 将脚本加入到定时任务中
    • 安装nginx开启目录权限保证本地机器可以直接本地yum源
    yum install nginx -y
    找到nginx配置文件,并修改nginx配置文件:
    vim nginx.conf
        server {
            listen       80;
            server_name  localhost;
            root         /mirror/7;         # 这里是yum源存放目录      
            location / {
                autoindex on;               # 打开目录浏览功能
                autoindex_exact_size off;   # on、off:以可读的方式显示文件大小
                autoindex_localtime on;     # on、off:是否以服务器的文件时间作为显示的时间
                charset utf-8,gbk;          # 展示中文文件名
                index index.html;
            }
    }
    
    
    • 在客户端修改yum源,并指向本地搭建的yum源主机
      • 注:如果开启秘钥验证,则需要秘钥文件,此处使用的ftp共享,当然nginx也是同样的方式,只更换url即可。
    vim ftp.repo
    
    [base]
    name=CentOS-$releasever - Base - mirror.template.com
    baseurl=ftp://10.10.10.1/yum-mirror/7/base/
    enabled=1
    gpgkey=ftp://10.10.10.1/yum-mirror/7/rpm-gpg/RPM-GPG-KEY-CentOS-7
    gpgcheck=0
    
    [updates]
    name=CentOS-$releasever - Updates - mirror.template.com
    baseurl=ftp://10.10.10.1/yum-mirror/7/updates/
    enabled=1
    gpgkey=ftp://10.10.10.1/yum-mirror/7/rpm-gpg/RPM-GPG-KEY-CentOS-7
    gpgcheck=0
    
    [extras]
    name=CentOS-$releasever - Extras - mirrors.template.com
    baseurl=ftp://10.10.10.1/yum-mirror/7/extras/
    enabled=1
    gpgkey=ftp://10.10.10.1/yum-mirror/7/rpm-gpg/RPM-GPG-KEY-CentOS-7
    gpgcheck=0
    


    作者:Outsrkem
    出处:https://www.cnblogs.com/outsrkem/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    dfadfas
    Sqlserver修改文件目录,包括系统数据库
    VS2013 产品密钥所有版本
    win11 取消右键更多选项
    VS2013 产品密钥所有版本
    CronTrigger表达式
    C#语言Windows服务程序测试网站发送HTTP请求超时解决办法
    未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\705b2e0e\c6ba7a68\App_global.asax.v9
    SQL跨数据库复制表数据<转载>
    “服务器应用程序不可用”解决方法
  • 原文地址:https://www.cnblogs.com/outsrkem/p/11486757.html
Copyright © 2020-2023  润新知