首页 > 代码库 > 搭建CentOS在线yum源镜像服务器
搭建CentOS在线yum源镜像服务器
说明:
操作系统:CentOS 6.7
Nginx版本:1.8.0
rsync版本:3.0.6
IP地址和端口:192.168.3.100:8080
目标:同步CentOS镜像站点的内容到此服务器,通过配置http服务器,提供yum服务
一、准备:
1).安装http服务器
使用Nginx服务器提供http服务
请参照Nginx 安装
2).Nginx配置
#vi/usr/local/nginx/conf/nginx.conf
server {
listen 8080;
server_name localhost;
root /var/repos/;
location / {
autoindexon;
autoindex_exact_size off;
autoindex_localtime on;
}
}
#service nginx reload
3).系统目录规划
Centos的Base源目录: /var/repos/centos
Centos的Base源目录: /var/repos/extras
Centos的Base源目录: /var/repos/updates
Centos的epel源目录: /var/repos/epel
4).基础软件包安装
# yum -y install createrepo # yum -y install rsync
二、安装:
1).创建镜像文件存放目录
#mkdir -p /var/repos/centos #mkdir -p /var/repos/extras #mkdir -p /var/repos/updates #mkdir -p /var/repos/epel
2).确定以上yum源上游源同步镜像地址
参考官方源:
CentOS官方标准源:
http://mirror.centos.org/centos/6.7/
中科大yum源:
rsync://mirrors.ustc.edu.cn/centos/6.7/os/x86_64/Packages/
rsync://mirrors.ustc.edu.cn/centos/6.7/updates/
rsync://mirrors.ustc.edu.cn/centos/6.7/extras/x86_64/Packages/
epel源:
http://mirrors.fedoraproject.org/publiclist/EPEL/
rsync://mirrors.kernel.org/fedora-epel
中科大epel源:
rsync://mirrors.ustc.edu.cn/epel/6/x86_64/
备注:上游yum源必须要支持rsync协议,否则不能使用rsync进行同步(国内的源很多不支持,这里选用中科大yum源)。
列出各个源下面的软件包
# rsync --list-only rsync://rsync.mirrors.ustc.edu.cn/centos/6.7/os/x86_64/Packages/ # rsync --list-only rsync://rsync.mirrors.ustc.edu.cn/centos/6.7/updates/x86_64/Packages/ # rsync --list-only rsync://rsync.mirrors.ustc.edu.cn/centos/6.7/extras/x86_64/Packages/ # rsync --list-only rsync://rsync.mirrors.ustc.edu.cn/epel/6/x86_64/
3).创建以上yum源同步脚本,并且设定脚本自动执行
备注:运行此脚本前,先要创建好同步目录及不需要同步的目录列表文件
#cd /var/repos
上传同步脚本到该目录下
#chmod +x rsync_yum.sh
把不需要同步的目录写到上面对应的文件中,每行一个目录即可
4).添加脚本定时执行任务
#vi /etc/crontab
#在最后一行添加以下代码
0 1 * * * root /home/crontab/yum_rsync.sh
#service crond restart
三、测试:
2).执行同步脚本
#sh /home/crontab/yum_rsync.sh
注意:等待脚本执行完毕,首次同步,耗费的时间比较长!
3).安装createrepo工具,创建yum源的repo配置文件
#yum -y installcreaterepo #cd/etc/yum.repos.d/ #进入目录 #mv /etc/yum.repos.d/CentOS-Base.repoCentOS-Base.repo-bak #vi/etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-Base(GDS)
baseurl=http://192.168.3.100/centos
path=/
enabled=0
gpgcheck=0
[updates]
name=CentOS-Updates(GDS)
baseurl=http://192.168.3.100/updates
path=/
enabled=1
gpgcheck=0
[extras]
name=CentOS-Extras(GDS)
baseurl=http://192.168.3.100/extras
path=/
enabled=1
gpgcheck=0
#vi /etc/yum.repos.d/epel.repo
[epel]
name=EPEL(GDS)
baseurl=http://192.168.3.100/epel
path=/
enabled=1
gpgcheck=0
4).测试yum源是否配置正确
a).清除当前yum缓存
#yum clean all
列出yum源中可用的软件包
#yum repolist
b).使用yum命令安装软件
测试CentOS-Base源
#yum install php
测试epel源
#yum install nginx
至此,搭建CentOS在线yum源镜像服务器完成!
搭建CentOS在线yum源镜像服务器