CentOS YUM源服务器搭建方式分析比较与搭建

时间:2022-10-17 04:02:09

CentOS YUM源服务器搭建方式分析比较与搭建

摘 要

学校大量服务器使用CentOS做操作系统,但大多数服务器都无法连接Internet,无法联机更新操作系统补丁。即使允许这些服务器连接Internet更新操作系统,也会带来大量重复的网络流量下载问题,因此在学校内部署一台CentOS YUM源服务器是合适的,既可以为CentOS服务器提供本地YUM源,又可以减少重复网络流量下载问题。本文分析比较了搭建CentOS YUM源服务器的方法,并实际搭建了一台CentOS YUM源服务器。文中的方法实用准确,为今后CentOS YUM源服务器的搭建提供了重要的参考意义。

【P键词】CentOS YUM 源服务器

1 引言

Redhat linux企业版操作系统因进入中国时间比较早,并且大量软件使用稳定版本,系统稳定性十分突出,在服务器领域占领大量市场,但其服务采用收费制度,使得用户不付费就无法获得更新,造成免费用户无法获得系统、软件及补丁更新的尴尬;而CentOS做为Redhat开源版本操作系统,免费同步更新,为广大无法为操作系统大量投入的用户带来了方便,各大主流服务器都支持CentOS。

CentOS的每个版本同Redhat一样保持长达10年,每个CentOS的版本大约每6个月会定期更新,以支持新的硬件。CentOS是一个安全的,低维护,可靠的,可预测和可重复的Linux环境。

学校机房有大量服务器运行稳定的CentOS操作系统,CentOS为学校、研究机构节省大量操作系统经费支出的同时,随着系统安全的要求逐步增加也带来了没有即使更新的问题。这来自学校内并不是所有服务器都能连接Internet,都能使用IPv6到其它高校源服务器进行更新,即使允许这些服务器连接Internet更新操作系统,也会带来大量重复的网络流量下载问题,因此在学校内部署一台CentOS YUM源服务器既能为教学、科研带来免费同步更新源,提供更加安全的网络环境。

搭建一台CentOS源服务器,首先需要一台能连接Internet的服务器并配置一定量的存储空间。本次搭建环境选择一台Dell PowerEdge M620刀片式服务器,CPU为2颗Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz,内存为16颗8G,硬盘256G;软件环境为CentOS release 6.8 (Final),2.6.32-642.el6.x86_64版本。本文第2节分析比较常用的搭建方式,第3节实践搭建了CentOS YUM源服务器。第4节进行了客户端YUM验证。

2 常用搭建方式与比较

CentOS YUM源服务器从搭建方式分为本地源和网络源两种方式:本地源就是使用本地光盘内容作为源来提供,其特点是源来源自本地,内容稳定占用空间固定,但反之就是内容无变化,无法提供更新,一般只适用于装机使用;网络源就是使用网络上CentOS官方新的内容作为源提供的内容,其特点就是更新安全有保障,但反之就是因为经常需要更新对网络和存储空间需要一定保障。从比较可以看出本文需要的是网络源。

CentOS YUM源服务器从提供服务的方式主要分为提供FTP和HTTP两种方式提供,FTP方式提供源服务需要客户端具备FTP客户端,而HTTP方式提供只要客户端有浏览器就能访问,相比FTP方式更加便捷,因此本次搭建使用HTTP方式提供centos源。

HTTP服务通常使用Apache或Nginx来搭建,Apache更侧重于内容与业务逻辑后台建设,Nginx更侧重于前端高并发访问,因此本次http服务使用nginx来实现。

3 搭建过程实验

3.1 安装nginx服务

因nginx不在CentOS官方yum源,故使用第三方yum源。

3.1.1 首先安装wget

#yum install wget

3.1.2 然后安装第三方yum源,用于安装nginx

#wget http:///installers/atomic

#sh ./atomic

#yum update

3.1.3 再安装nginx

#yum install nginx

3.1.4 接着配置启动nginx服务

# vi /etc/nginx/nginx.conf

在http里加上如下3行,开启nginx目录访问、文件大小概要显示和时间显示

autoindex on;

autoindex_exact_size off;

autoindex_localtime on;

#service nginx reload

#service nginx start

3.1.5 最后开启防火墙80端口

#vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

# service iptables restart

3.2 下载镜像文件

3.2.1 创建镜像文件存放目录

#mkdir -p /usr/share/nginx/html/centos

3.2.2 安装rsync

#yum install rsync

3.2.3 选择rsync更新源

登陆https:///download/mirrors/,选择支持rsync更新的源;这里我们选择清华源https:///centos/。

3.2.4 建立rsync排除文件,只保留想要同步的内容,我们这里只留下6.8目录,去掉其它所有目录

#vi exclude_centos.list

例如:

2.1/

2/

3.2.5 rsync更新文件

#rsync -avrt rsync:///centos/ --exclude-from=/root/exclude_centos.list -L --safe-links /usr/share/nginx/html/centos/yum-plugin-priorities

3.2.6 a写软链接文件

#cd /usr/share/nginx/html/centos

#ln -s 6.8 6

3.3 定时更新

3.3.1 编写更新脚本

vi centos_rsync.sh

#!/bin/sh

/usr/bin/rsync -avzP rsync:///centos/ --exclude-from=/root/exclude_centos.list -L --safe-links /usr/share/nginx/html/centos/yum-plugin-priorities 1>/var/log/rsync.log 2>/var/log/rsync.err

#chmod +x centos_rsync.sh

3.3.2 定时启动脚本

#vi /etc/crontab

选择清华CentOS YUM源同步成功后的时间执行。

0 2 * * * root /root/centos_rsync.sh

4 客户端验证

#cd /etc/yum.repos.d

#cp CentOS-Base.repo CentOS-Base.repo.bak

#vi CentOS-Base.repo

将原文件中的网址替换成新建YUM源的IP地址。

#yum clean all

#yum makecache

#yum update

5 相关工作

在有效提供CentOS官方源后,还可以继续提供rpmforge源和epel源给校内CentOS服务器使用,本文不再赘述。再进一步可以再DNS服务器上给CentOS YUM源服务器配置域名地址,记忆更加直观方便。

参考文献

[1]盛铨.基于Centos的Nginx Web服务器的构建[J].福建电脑,2012(03):145-146.

[2]戴德伟.构建内网YUM软件仓库服务器[J].数字技术与应用,2012(04):211+213.

[3]陈梁,王瑞胡.基于YUM本地源的Linux环境快速配置方法[J].红河学院学报,2015(05):47-50.

[4]高银渌,李霞,李清源.服务器远程数据同步工具Rsync应用[J].无线互联科技,2013(03):234.

[5]栾宏宇,许海谦.利用crontab命令实现计划任务[J].中国金融电脑,2001(10):84-85.

[6]凌质亿,刘哲星,曹蕾.高并发环境下Apache与Nginx的I/O性能比较[J].计算机系统应用,2013(06):204-208.

作者简介

杨明,现供职于中央民族大学信息化建设管理处。主要研究方向为计算机网络、软件。

作者单位

中央民族大学信息化建设管理处 北京市 100081

上一篇:变电站二次设备全过程动态管理技术的应用 下一篇:基于Wi―Fi的WLAN应用与安全