自建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 16:58
下一篇 2016-05-19 10:14

相关推荐

  • 私人定制—linux系统

    自制Linux系统: 1、分区并创建文件系统 [root@localhost6 ~]# fdisk  /dev/sdb 分两个必要的分区 /dev/sdb1对应/boot /dev/sdb2对应根/ 创建文件系统: [root@localhost6 ~]# mkfs.ext4 /dev/s…

    Linux干货 2016-09-26
  • linux 记忆命令心得

    新开始学linux,要记住很多的命令,毕竟这是linux的根本,没有这些命令,连操作都没办法进行。所以我写这个的目的是我自己记忆,也是想帮助一下一同学习linux的同学们,提供自己记忆这些的方法,抛砖引玉,大家共同讨论一下。 我的记忆方法就是分类,把命令分成输出类,名词累,操作类。 输出类就是说的例如w,who,whoami,echo,ifcogfig,wh…

    Linux干货 2017-07-15
  • 计算机的组成及其功能简述

    1、计算机的组成 (1)运算器、控制器、寄存器、缓存 –> CPU,Central Processing Unit (2)存储器 –> Memory (3)输入设备 –> Keyboard、Mouse and so on (4)输出设备 –> Displayer and so on (5…

    Linux干货 2016-09-19
  • Linux Services and Security–part1

    一、详细描述一次加密通讯的过程,结合图示最佳 以Bob和Alice安全通讯为例: Bob<———>Alice 1. Bob要和Alice安全通信首先要取得对方的公钥,即对方的证书,并验证证书的合法性。验证过程和内容: 1)、用CA的公钥(双方已知)解密对方证书中CA的签名;能解密说明证书来原可靠; 2)、用证书中标记的“签名算法”来计算证书的相关…

    2017-10-17
  • 用户 组

    用户 组    在linux系统中,用户管理是基于用户名和密码的方式进行资源的分配,linux上用户Username/UID分为以下类别:    管理员: root,0    普通用户: 1-65535 普通用户分为:系统用户和登录用户两种 系统用户:1-499(cen…

    系统运维 2016-08-04
  • Linux如何快速查找需要执行的命令

    大家知道,对于熟悉命令行的用户来说,命令行操作比图形界面操作高效、简洁,那么Linux是如何快速找到命令的位置呢?今天刚学了这一部分,与大家分享。         Linux将命令分为内部命令和外部命令,这是由于一些命令是常用的,需要常驻内存以减少检索时间,所以集成在shell之…

    2017-07-15

评论列表(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