摘 要
學(xué)校大量服務(wù)器使用CentOS做操作系統(tǒng),但大多數(shù)服務(wù)器都無法連接Internet,無法聯(lián)機(jī)更新操作系統(tǒng)補(bǔ)丁。即使允許這些服務(wù)器連接Internet更新操作系統(tǒng),也會帶來大量重復(fù)的網(wǎng)絡(luò)流量下載問題,因此在學(xué)校內(nèi)部署一臺CentOS YUM源服務(wù)器是合適的,既可以為CentOS服務(wù)器提供本地YUM源,又可以減少重復(fù)網(wǎng)絡(luò)流量下載問題。本文分析比較了搭建CentOS YUM源服務(wù)器的方法,并實(shí)際搭建了一臺CentOS YUM源服務(wù)器。文中的方法實(shí)用準(zhǔn)確,為今后CentOS YUM源服務(wù)器的搭建提供了重要的參考意義。
【關(guān)鍵詞】CentOS YUM 源服務(wù)器
1 引言
Redhat linux企業(yè)版操作系統(tǒng)因進(jìn)入中國時間比較早,并且大量軟件使用穩(wěn)定版本,系統(tǒng)穩(wěn)定性十分突出,在服務(wù)器領(lǐng)域占領(lǐng)大量市場,但其服務(wù)采用收費(fèi)制度,使得用戶不付費(fèi)就無法獲得更新,造成免費(fèi)用戶無法獲得系統(tǒng)、軟件及補(bǔ)丁更新的尷尬;而CentOS做為Redhat開源版本操作系統(tǒng),免費(fèi)同步更新,為廣大無法為操作系統(tǒng)大量投入的用戶帶來了方便,各大主流服務(wù)器都支持CentOS。
CentOS的每個版本同Redhat一樣保持長達(dá)10年,每個CentOS的版本大約每6個月會定期更新,以支持新的硬件。CentOS是一個安全的,低維護(hù),可靠的,可預(yù)測和可重復(fù)的Linux環(huán)境。
學(xué)校機(jī)房有大量服務(wù)器運(yùn)行穩(wěn)定的CentOS操作系統(tǒng),CentOS為學(xué)校、研究機(jī)構(gòu)節(jié)省大量操作系統(tǒng)經(jīng)費(fèi)支出的同時,隨著系統(tǒng)安全的要求逐步增加也帶來了沒有即使更新的問題。這來自學(xué)校內(nèi)并不是所有服務(wù)器都能連接Internet,都能使用IPv6到其它高校源服務(wù)器進(jìn)行更新,即使允許這些服務(wù)器連接Internet更新操作系統(tǒng),也會帶來大量重復(fù)的網(wǎng)絡(luò)流量下載問題,因此在學(xué)校內(nèi)部署一臺CentOS YUM源服務(wù)器既能為教學(xué)、科研帶來免費(fèi)同步更新源,提供更加安全的網(wǎng)絡(luò)環(huán)境。
搭建一臺CentOS源服務(wù)器,首先需要一臺能連接Internet的服務(wù)器并配置一定量的存儲空間。本次搭建環(huán)境選擇一臺Dell PowerEdge M620刀片式服務(wù)器,CPU為2顆Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz,內(nèi)存為16顆8G,硬盤256G;軟件環(huán)境為CentOS release 6.8 (Final),2.6.32-642.el6.x86_64版本。本文第2節(jié)分析比較常用的搭建方式,第3節(jié)實(shí)踐搭建了CentOS YUM源服務(wù)器。第4節(jié)進(jìn)行了客戶端YUM驗(yàn)證。
2 常用搭建方式與比較
CentOS YUM源服務(wù)器從搭建方式分為本地源和網(wǎng)絡(luò)源兩種方式:本地源就是使用本地光盤內(nèi)容作為源來提供,其特點(diǎn)是源來源自本地,內(nèi)容穩(wěn)定占用空間固定,但反之就是內(nèi)容無變化,無法提供更新,一般只適用于裝機(jī)使用;網(wǎng)絡(luò)源就是使用網(wǎng)絡(luò)上CentOS官方新發(fā)布的內(nèi)容作為源提供的內(nèi)容,其特點(diǎn)就是更新安全有保障,但反之就是因?yàn)榻?jīng)常需要更新對網(wǎng)絡(luò)和存儲空間需要一定保障。從比較可以看出本文需要的是網(wǎng)絡(luò)源。
CentOS YUM源服務(wù)器從提供服務(wù)的方式主要分為提供FTP和HTTP兩種方式提供,F(xiàn)TP方式提供源服務(wù)需要客戶端具備FTP客戶端,而HTTP方式提供只要客戶端有瀏覽器就能訪問,相比FTP方式更加便捷,因此本次搭建使用HTTP方式提供centos源。
HTTP服務(wù)通常使用Apache或Nginx來搭建,Apache更側(cè)重于內(nèi)容與業(yè)務(wù)邏輯后臺建設(shè),Nginx更側(cè)重于前端高并發(fā)訪問,因此本次http服務(wù)使用nginx來實(shí)現(xiàn)。
3 搭建過程實(shí)驗(yàn)
3.1 安裝nginx服務(wù)
因nginx不在CentOS官方y(tǒng)um源,故使用第三方y(tǒng)um源。
3.1.1 首先安裝wget
#yum install wget
3.1.2 然后安裝第三方y(tǒng)um源,用于安裝nginx
#wget http://www.atomicorp.com/installers/atomic
#sh ./atomic
#yum update
3.1.3 再安裝nginx
#yum install nginx
3.1.4 接著配置啟動nginx服務(wù)
# 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 創(chuàng)建鏡像文件存放目錄
#mkdir -p /usr/share/nginx/html/centos
3.2.2 安裝rsync
#yum install rsync
3.2.3 選擇rsync更新源
登陸https://www.centos.org/download/mirrors/,選擇支持rsync更新的源;這里我們選擇清華源https://mirrors.tuna.tsinghua.edu.cn/centos/。
3.2.4 建立rsync排除文件,只保留想要同步的內(nèi)容,我們這里只留下6.8目錄,去掉其它所有目錄
#vi exclude_centos.list
例如:
2.1/
2/
3.2.5 rsync更新文件
#rsync -avrt rsync://mirrors.tuna.tsinghua.edu.cn/centos/ --exclude-from=/root/exclude_centos.list -L --safe-links /usr/share/nginx/html/centos/yum-plugin-priorities
3.2.6 補(bǔ)寫軟鏈接文件
#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://mirrors.tuna.tsinghua.edu.cn/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源同步成功后的時間執(zhí)行。
0 2 * * * root /root/centos_rsync.sh
4 客戶端驗(yàn)證
#cd /etc/yum.repos.d
#cp CentOS-Base.repo CentOS-Base.repo.bak
#vi CentOS-Base.repo
將原文件中的網(wǎng)址替換成新建YUM源的IP地址。
#yum clean all
#yum makecache
#yum update
5 相關(guān)工作
在有效提供CentOS官方源后,還可以繼續(xù)提供rpmforge源和epel源給校內(nèi)CentOS服務(wù)器使用,本文不再贅述。再進(jìn)一步可以再DNS服務(wù)器上給CentOS YUM源服務(wù)器配置域名地址,記憶更加直觀方便。
參考文獻(xiàn)
[1]盛銓.基于Centos的Nginx Web服務(wù)器的構(gòu)建[J].福建電腦,2012(03):145-146.
[2]戴德偉.構(gòu)建內(nèi)網(wǎng)YUM軟件倉庫服務(wù)器[J].數(shù)字技術(shù)與應(yīng)用,2012(04):211+213.
[3]陳梁,王瑞胡.基于YUM本地源的Linux環(huán)境快速配置方法[J].紅河學(xué)院學(xué)報,2015(05):47-50.
[4]高銀淥,李霞,李清源.服務(wù)器遠(yuǎn)程數(shù)據(jù)同步工具Rsync應(yīng)用[J].無線互聯(lián)科技,2013(03):234.
[5]欒宏宇,許海謙.利用crontab命令實(shí)現(xiàn)計劃任務(wù)[J].中國金融電腦,2001(10):84-85.
[6]凌質(zhì)億,劉哲星,曹蕾.高并發(fā)環(huán)境下Apache與Nginx的I/O性能比較[J].計算機(jī)系統(tǒng)應(yīng)用,2013(06):204-208.
作者簡介
楊明,現(xiàn)供職于中央民族大學(xué)信息化建設(shè)管理處。主要研究方向?yàn)橛嬎銠C(jī)網(wǎng)絡(luò)、軟件。
作者單位
中央民族大學(xué)信息化建設(shè)管理處 北京市 100081