zoukankan      html  css  js  c++  java
  • 创建yum本地仓库,将阿里仓库同步到本地,并定时更新

    很多时候为了加速自己内部的rpm包安装速度,都会搭建自己的yum源仓库,而使用系统光盘自带的源,由于软件版本比较落后,所以不太适用,而大家都在用的阿里仓库比较好用,所以就想到了把阿里仓库的rpm全部拉到本地,并做yum仓库的定时更新。这样既能保证软件包是最新的,也能保证软件的安装速度。那么下面来具体实施,搭建自己的yum本地仓库,并定时从阿里仓库同步过来。

    第一步:下载阿里镜像的repo安装包,centos6就下载6的,7的就下载7的地址:https://mirrors.aliyun.com/repo/

    我们以centos7的镜像为例

    1. cd /etc/yum.repos.d/
    2. mkdir bak
    3. mv Centos* bak #将系统自带的源备份到bak目录下
    4. wget https://mirrors.aliyun.com/repo/Centos-7.repo
    5. cat Centos-7.repo
    6. # CentOS-Base.repo
    7. #
    8. # The mirror system uses the connecting IP address of the client and the
    9. # update status of each mirror to pick mirrors that are updated to and
    10. # geographically close to the client. You should use this for CentOS updates
    11. # unless you are manually picking other mirrors.
    12. #
    13. # If the mirrorlist= does not work for you, as a fall back you can try the
    14. # remarked out baseurl= line instead.
    15. #
    16. #
    17. [base]
    18. name=CentOS-$releasever - Base - mirrors.aliyun.com
    19. failovermethod=priority
    20. baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
    21. http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
    22. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
    23. gpgcheck=1
    24. gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
    25. #released updates
    26. [updates]
    27. name=CentOS-$releasever - Updates - mirrors.aliyun.com
    28. failovermethod=priority
    29. baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
    30. http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
    31. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
    32. gpgcheck=1
    33. gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
    34. #additional packages that may be useful
    35. [extras]
    36. name=CentOS-$releasever - Extras - mirrors.aliyun.com
    37. failovermethod=priority
    38. baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
    39. http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/
    40. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
    41. gpgcheck=1
    42. gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
    43. #additional packages that extend functionality of existing packages
    44. [centosplus]
    45. name=CentOS-$releasever - Plus - mirrors.aliyun.com
    46. failovermethod=priority
    47. baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
    48. http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/
    49. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
    50. gpgcheck=1
    51. enabled=0
    52. gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
    53. #contrib - packages by Centos Users
    54. [contrib]
    55. name=CentOS-$releasever - Contrib - mirrors.aliyun.com
    56. failovermethod=priority
    57. baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
    58. http://mirrors.aliyuncs.com/centos/$releasever/contrib/$basearch/
    59. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
    60. gpgcheck=1
    61. enabled=0
    62. gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

    已经配置好的阿里仓库

    1. yum repolist #查看阿里的可用仓库,有启用的表示已经成功了
    2. 从阿里服务器将rpm同步到本地需要两个rpm软件createrepo 和 yum-utils
    3. yum install createrepo yum-utils -y #yum安装这两个包
    4. mkdir -p /mirrors/Packege #创建rpm包的存放目录
    5. reposync -r base -p /mirrors/Packege #将已经配置好的阿里仓库镜像内的rpm包拉到本地,b ase为本地已经配置好的仓库名,可以用yum repolist查看到
    6. createrepo -pdo /mirrors/ /mirrors/Packege #创建repo数据库
     
    ###############################同步rpm包,需要相当长一段时间################################
     
    同步完成之后,本地的yum仓库已经基本完成了,只剩下定时更新了
     
    1. vim /cron/repository.sh #编写同步脚本
    2. reposync -r base -p /mirrors/Packege -d #来删除本地老旧
    3. reposync -r base -p /mirrors/Packege
    4. crontab -e #添加定时任务
    5. 0 0 1 * * sh /cron/repository.sh #每月1日0时更新yum仓库
  • 相关阅读:
    算法训练 P1103
    算法训练 表达式计算
    算法训练 表达式计算
    基础练习 时间转换
    基础练习 字符串对比
    Codeforces 527D Clique Problem
    Codeforces 527C Glass Carving
    Codeforces 527B Error Correct System
    Codeforces 527A Glass Carving
    Topcoder SRM 655 DIV1 250 CountryGroupHard
  • 原文地址:https://www.cnblogs.com/momenglin/p/8485678.html
Copyright © 2011-2022 走看看