• nginx+rsync实现本地yum源以及公网yum源


    1.配置nginx的autoindex模块,开启目录浏览功能
    2.使用rsync同步公网源上的软件包,至本地目录中
    3.配置客户端指向即可

    1.nginx提供目录浏览功能

    [root@xuliangwei ~]# cat /etc/nginx/conf.d/yum.conf
    server {
    	listen 80;
    	listen [::]:80;
    	server_name mirrors.bgx.com;
    	location / {
    		root /repo;
    		autoindex on; #开启目录浏览功能
    	}
    

    2.从公网的仓库同步软件包至本地,但需要注意,如果全同步,会特别占用空间,所以我们可以将不需要的软件包进行过滤。
    rsync同步命令(建议将其加入定时任务)

    #1.同步centos7的基础源
    rsync -zaP --exclude-from /repo/exclude_7.txt rsync://rsync.mirrors.ustc.edu.cn/centos/7.6.1810/ /repo/centos
    
    #2.同步centos7的epel源
    rsync -zaP --exclude-from /repo/exclude_7_epel.txt rsync://rsync.mirrors.ustc.edu.cn/epel/7/ /repo/epel
    
    #centos7排除的文件(保留os和extras)
    [root@oldboyedu ~]# cat /repo/exclude_7.txt
    atomic/
    centosplus/
    cloud/
    configmanagement/
    cr/
    dotnet/
    fasttrack/
    isos/
    nfv/
    opstools/
    paas/
    rt/
    sclo/
    storage/
    virt/
    debug/
    drpms/
    
    #centos7_epel排除的文件(保留x86_64)
    [root@xuliangwei ~]# cat /repo/exclude_7_epel.txt
    SRPMS/
    aarch64/
    ppc64/
    ppc64le/
    state
    

    3.客户端配置本地yum仓库

    [centos]
    name = Local Base Repository
    baseurl = http://mirrors.bgx.com/centos
    enable = 1
    gpgcheck = 0
    
    [epel]
    name = Local Epel Repository
    baseurl = http://mirrors.bgx.com/epel
    enable = 1
    gpgcheck = 0
    

    4.扩展:如果想为下游提供同步服务,我们可以使用rsync协议将目录共享出去,让其他人也可以同步(一般玩不起,毕竟没钱)。

    [root@xuliangwei ~]# cat /etc/rsyncd.conf
    uid = nginx
    gid = nginx
    use chroot = no
    max connections = 2000
    timeout = 600
    pid file = /var/run/rsyncd.pid
    lock file = /var/run/rsync.lock
    log file = /var/log/rsyncd.log
    
    ignore errors
    read only = true			#只提供同步,所以只读即可
    list = true					#允许查看列表,认证的什么的不需要配置
    hosts allow = 0.0.0.0/0		#允许任何人同步
    
    ##########提供同步的模块
    [centos]
    path = /repo/centos
    [epel]
    path = /repo/epel
    

    参考文献-oldboy_qiangge

  • 相关阅读:
    算法基础<七> 加权有向图
    union 分页/group/join 复杂查询(.net core/framework)
    扩展Elasticsearch客户端简化ES查询(.net core/framework)
    对EF Core进行扩展使支持批量操作/复杂查询
    Grpc对象转proto代码工具
    扩展ADO.net实现对象化CRUD(.net core/framework)
    Sublime Text 4 破解笔记
    python三元表达式(三目运算符)的坑
    xaf-常见问题解答
    xaf.blazor中如何开启诊断按钮
  • 原文地址:https://www.cnblogs.com/xuliangwei/p/10875184.html
Copyright © 2020-2023  润新知