自建repo软件仓库

近期主要使用的aliyun的源,主要会用到centos6、zabbix、epel和xen等,由于网络质量不佳,考虑到自建软件仓库

第一步,删除系统自导的源,新建ali.repo,将常用的几个源地址加入

# rm /etc/yum.repos.d/*.repo -fr
# vim /etc/yum.repos.d/ali.repo
[centos6]
name=centos6
baseurl=http://mirrors.aliyun.com/centos/6/os/x86_64/
gpgcheck=no
[zabbix]
name=zabbix
baseurl=http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/
gpgcheck=no
[epel]
name=Epel6
baseurl=http://mirrors.aliyun.com/epel/6/x86_64/
gpgcheck=0
[xen4]
name=xen4
baseurl=http://mirrors.aliyun.com/centos/6/xen4/x86_64/
gpgcheck=no

第二步,新建文件夹yumrepo用来存放软件;

# mkdir /yumrepo

使用reposync将ali.repo里配置源对应的软件下载至/yumrepo文件夹

# yum install reposync -y
# reposync -P /yumrepo/
    .....................       
    漫长的等待;下载完毕
# ll /yumrepo/
total 876
drwxr-xr-x. 4 root root   4096 May  3 12:39 centos6
drwxr-xr-x. 4 root root 876544 May  3 22:14 epel
drwxr-xr-x. 3 root root   4096 May  3 12:30 xen4
drwxr-xr-x. 2 root root  12288 May  3 19:07 zabbix

第三步,安装createrepo,给对应的源文件夹生产repodata文件夹

# yum install createrepo -y
# mv /etc/yum.repos.d/ali.repo /etc/yum.repos.d/ali.repo.bak

将整个yumrepo做出一个独立的仓库

# createrepo /yumrepo/
    .....................       
    漫长的等待;初始化完毕
建立一个完整仓库文件
# vim /etc/yum.repos.d/local.repo
[local]
name=local
baseurl=file:///yumrepo/

或者 将每个独立的源类型做成独立的的仓库

# createrepo /yumrepo/centos6
# createrepo /yumrepo/zabbix
# createrepo /yumrepo/xen4
# createrepo /yumrepo/epel
    建立多个分散仓库文件
# vim /etc/yum.repos.d/local.repo
[centos6]
name=centos6
baseurl=file:///yumrepo/centos6
gpgcheck=0
[epel]
name=epel
baseurl=file:///yumrepo/epel
gpgcheck=0
[xen4]
name=xen4
baseurl=file:///yumrepo/xen4
gpgcheck=0
[zabbix]
name=zabbix
baseurl=file:///yumrepo/zabbix
gpgcheck=0

第四步,后期如果需要增加其它源,例如rpmforce

# rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

查看repo id号,选择需要同步的repo id

# yum repolist all
repo idrepo name  status
all     all enabled: 16,649
rpmforge   RHEL 6 - RPMforge.net - dag   
# reposync --repoid=rpmforce /yumrepo
# ll /yumrepo/
total 892
drwxr-xr-x. 4 root root   4096 May  3 12:39 centos6
drwxr-xr-x. 3 root root 876544 May  4 11:31 epel
drwxr-xr-x. 3 root root   4096 May  4 11:11 other
drwxr-xr-x. 2 root root   4096 May  4 12:05 repodata
drwxr-xr-x. 3 root root   4096 May  4 11:45 rpmforge
drwxr-xr-x. 4 root root   4096 May  3 22:30 xen4
drwxr-xr-x. 3 root root  12288 May  3 22:31 zabbix
# createrepo --update /yumrepo
或
# createrepo --update /yumrepo/rpmforce

第五步,可以通过httpd服务,将yumrepo文件发布httpd,并新建local.repo供大家下载使用

# yum install httpd -y
# ln -sv /yumrepo/ /var/www/html/repo
# service httpd start
生成repo配置文件
# vim /yumrepo/local.repo
[local]
name=local
baseurl=http://SERVERIP/repo/
gpgcheck=no

或

# vim /etc/yum.repos.d/local.repo
[centos6]
name=centos6
baseurl=file:///yumrepo/centos6
gpgcheck=0
[epel]
name=epel
baseurl=file:///yumrepo/epel
gpgcheck=0
[xen4]
name=xen4
baseurl=file:///yumrepo/xen4
gpgcheck=0
[zabbix]
name=zabbix
baseurl=file:///yumrepo/zabbix
gpgcheck=0
[rpmforce]
name=rpmforce
baseurl=file:///yumrepo/rpmforce
gpgcheck=0

局域网其他机器可以通过此地址(http://SERVERIP/repo/local.repo)下载内网的repo文件。

原创文章,作者:Tuolei,如若转载,请注明出处:http://www.178linux.com/15945

(1)
TuoleiTuolei
上一篇 2016-05-18
下一篇 2016-05-19

相关推荐

  • N26 – 第三周作业

    1、列出当前系统上所有已登录的用户的用户名,同一用户登录多次只显示一次     ~]# who -u |cut -d ' ' -f1|uniq -u 2、最后登录到当前系统的用户的相关信息     ~]#id $(last | h…

    Linux干货 2017-01-03
  • 网络属性配置(二)

    本文接上篇。。。 ip address -protocol address management. ip address add -add new protocol address   ip addr add IFADDR   label NAME :为额外添加的地址指明接口别名    [broadcast ADDRE…

    Linux干货 2017-01-02
  • 第九周练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # nologin=$(awk -F: '$NF=="/sbin/nologin"{print $NF}…

    Linux干货 2016-12-21
  • centos7配置bindDNS解析服务

    首先来概述一下 通俗一点理解呢,DNS就是把域名转换成IP的一种服务(反向则是IP转换成域名).以方便人们的记忆,就好比记住一个代表性的英文要比记住电话号码快得多,通常我们将这种服务称之为解析.现在一般公网都有万网 腾讯云这些机构,DNS这一块我们不需要负责.但是在现在企业的内部网则就需要我们来搭建DNS服务器了.本次采用的bind工具进行域名的解析。 1.…

    Linux干货 2018-03-26
  • OpenSSH的应用和利用OpenSSL创建私有CA签证给httpd服务器开起https

    一、OpenSSH     OpenSSH与SSH协议是远程登录的首选连接工具。它加密所有流量,以消除窃听,连接劫持和其它攻击。OpenSSH常常被误认以为与OpenSSL有关系,但实际上这两个项目的有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密通讯软件。  &…

    Linux干货 2016-04-24
  • 集中练习8-bash脚本及系统启动

    集中练习8-bash脚本及系统启动

    2017-12-06

评论列表(1条)

  • Tuolei
    Tuolei 2016-05-20 10:22

    最后部分,有点小错误,应该是# vim /etc/yum.repos.d/local.repo
    [centos6]
    name=centos6
    baseurl=http://SERVERIP/centos6
    gpgcheck=0
    [epel]
    name=epel
    baseurl=http://SERVERIP/epel
    gpgcheck=0
    [xen4]
    name=xen4
    baseurl=http://SERVERIP/xen4
    gpgcheck=0
    [zabbix]
    name=zabbix
    baseurl=http://SERVERIP/zabbix
    gpgcheck=0
    [rpmforce]
    name=rpmforce
    baseurl=http://SERVERIP/rpmforce
    gpgcheck=0