王冠中 徐鸝 邱安波
摘要針對(duì)高校公共機(jī)房軟件維護(hù)的特點(diǎn),討論了PC機(jī)軟件系統(tǒng)整體復(fù)制和應(yīng)用軟件批量安裝的效率問題,給出了解決萬法。實(shí)踐表明,充分利用基于組播模式的數(shù)據(jù)傳輸技未可以大幅度節(jié)省網(wǎng)絡(luò)復(fù)制的時(shí)同,靈活運(yùn)用一些自動(dòng)化腳本技術(shù),也能夠極大地提高軟件的批量安裝效率。
關(guān)鍵詞:公共機(jī)屠,軟件維護(hù),組播,效率
中圖分類號(hào)TP308文獻(xiàn)標(biāo)志碼A文章編號(hào)1006-8228(2012)01-10-04
0引言
高校公共機(jī)房計(jì)算機(jī)設(shè)備使用的頻率很高,容易出現(xiàn)各類軟硬件故障,甚至造成系統(tǒng)崩潰。在這些故障中,有相當(dāng)一部分是最后需要重新安裝軟件來修復(fù)的。另外,高校公共機(jī)房是面向全校提供服務(wù)的,通常會(huì)遇到一些臨時(shí)的軟件安裝任務(wù)(如計(jì)算機(jī)等級(jí)考試軟件等),往往裝機(jī)的臺(tái)數(shù)很多,時(shí)間緊。因此,如何盡快滿足教學(xué)需求,提高軟件系統(tǒng)維護(hù)效率,是機(jī)房管理員必須考慮的問題。公共機(jī)房的軟件維護(hù),包括計(jì)算機(jī)系統(tǒng)中的軟件安裝和恢復(fù)。對(duì)于批量的計(jì)算機(jī)系統(tǒng)軟件全新安裝,目前通常采用網(wǎng)絡(luò)傳輸?shù)姆绞綄?shí)現(xiàn)計(jì)算機(jī)硬盤上的系統(tǒng)復(fù)制,如網(wǎng)絡(luò)對(duì)拷(這里指固化在一些主板、網(wǎng)卡或還原卡ROM中的代碼)或者網(wǎng)絡(luò)克隆(也稱網(wǎng)刻,這里指獨(dú)立軟件形式的代碼)。如果只是在計(jì)算機(jī)系統(tǒng)上新裝軟件,此時(shí)不必全部重新傳輸,可以采用另一種方式增量安裝。針對(duì)全新安裝和增量安裝,筆者總結(jié)了多年的機(jī)房軟件系統(tǒng)維護(hù)經(jīng)驗(yàn)和體會(huì),撰稿以供探討。
1全新安裝
目前在公共機(jī)房管理中比較常用的全新安裝方式有網(wǎng)絡(luò)對(duì)拷和網(wǎng)絡(luò)克隆兩種。
1.1網(wǎng)絡(luò)對(duì)拷
網(wǎng)絡(luò)對(duì)拷,是指將大量數(shù)據(jù)在局域網(wǎng)內(nèi)的不同PC終端之間作高速的傳輸和接收,其目的是整體復(fù)制PC機(jī)上的軟件系統(tǒng)。網(wǎng)絡(luò)對(duì)拷的功能代碼嵌入在機(jī)器的ROM中,使用前須在各終端硬盤上安裝驅(qū)動(dòng)程序。目前,在一些品牌PC機(jī)中,都自帶有網(wǎng)絡(luò)對(duì)拷功能(如聯(lián)想和惠普等,稱為網(wǎng)絡(luò)同傳)。有些硬盤保護(hù)卡(還原卡)或兼其還原卡功能的網(wǎng)卡也帶有網(wǎng)絡(luò)對(duì)拷功能(如海光藍(lán)卡等)。
在批量維護(hù)系統(tǒng)時(shí),選定一臺(tái)PC機(jī)(發(fā)送端)進(jìn)行初始安裝,然后通過網(wǎng)絡(luò),將數(shù)據(jù)發(fā)送至局域網(wǎng)內(nèi)的其他PC機(jī)(接收端),可以進(jìn)行—對(duì)一或一對(duì)多的數(shù)據(jù)傳輸。
網(wǎng)絡(luò)對(duì)拷方式一般都與硬盤保護(hù)(還原)方式相伴。通常硬盤保護(hù)(還原)機(jī)制的代碼也固化在ROM中。在網(wǎng)絡(luò)對(duì)拷前后,一般都需要對(duì)硬盤解保護(hù)或加保護(hù),這種操作在一定程度上還是比較繁瑣的。假如是PCI插卡,也容易引起松動(dòng),從而出現(xiàn)保護(hù)失效的現(xiàn)象。
1.2網(wǎng)絡(luò)克隆
網(wǎng)絡(luò)克隆和網(wǎng)絡(luò)對(duì)拷相似,也是一種對(duì)批量PC機(jī)進(jìn)行數(shù)據(jù)傳輸?shù)姆绞?。網(wǎng)絡(luò)克隆軟件以獨(dú)立的軟件形式存在,操作靈活,算法高效。網(wǎng)絡(luò)克隆過程按CIS模式進(jìn)行,服務(wù)端等到所有客戶端連接后實(shí)施數(shù)據(jù)傳輸。數(shù)據(jù)傳輸模式有三種·單點(diǎn)傳送、多點(diǎn)傳送、直接廣播,分別對(duì)應(yīng)于克隆廣播的三個(gè)選項(xiàng)單播、組播、廣播。
依據(jù)客戶端機(jī)器是否支持PXE協(xié)議,網(wǎng)絡(luò)克隆客戶端有兩類引導(dǎo)方式遠(yuǎn)程引導(dǎo)和本地引導(dǎo)。PXE(Pre-boot ExecutionEnvtronment,預(yù)啟動(dòng)執(zhí)行環(huán)境)是一種遠(yuǎn)程引導(dǎo)技術(shù),它可以使計(jì)算機(jī)通過網(wǎng)絡(luò)啟動(dòng)。當(dāng)計(jì)算機(jī)引導(dǎo)時(shí),PXE客戶端從眼務(wù)端上下載引導(dǎo)程序到本地運(yùn)行,免去了本地加載引導(dǎo)程序的麻煩。
基于PXE協(xié)議的網(wǎng)絡(luò)克隆一般過程是服務(wù)器啟動(dòng)后,客戶端首先從DHCP(DynaIrac Host ConfiguraUon Protocol動(dòng)態(tài)主機(jī)配置協(xié)議)服務(wù)得到動(dòng)態(tài)IP地址,再從TFFP(Trivial FileTransfer Protocol,簡單文件傳輸協(xié)議)服務(wù)得到引導(dǎo)程序,進(jìn)而由Ghost軟件的數(shù)據(jù)傳輸服務(wù)實(shí)現(xiàn)克隆。
如果客戶端機(jī)器不具備PXE功能,則需要考慮本地引導(dǎo),同時(shí)需要考慮由此產(chǎn)生的效率問題。
1.3方法討論
1.3.1基于組播模式的網(wǎng)絡(luò)克隆
網(wǎng)絡(luò)克隆需要事先準(zhǔn)備樣機(jī)系統(tǒng)的映像文件,而網(wǎng)絡(luò)對(duì)拷則不必這樣做。但是,網(wǎng)絡(luò)對(duì)拷方案有比較明顯的缺點(diǎn)。
1、受制于硬件型號(hào)。由于硬件的維修和更換,同—個(gè)機(jī)房的機(jī)器配置可能有好幾種,對(duì)于異種機(jī)器(主板或硬盤不同)之間的系統(tǒng)復(fù)制,網(wǎng)絡(luò)對(duì)拷就顯得無能為力。
2、網(wǎng)絡(luò)對(duì)拷的速度隨著PC機(jī)數(shù)量的增加而減慢。
3、還原卡型的網(wǎng)絡(luò)對(duì)拷方式還受制于PCI插卡的穩(wěn)定陛,如出現(xiàn)插卡松動(dòng)的情況,就會(huì)引起傳送失敗。
對(duì)于批量傳輸整體系統(tǒng),在網(wǎng)絡(luò)克隆實(shí)踐中通常采用組播傳輸模式。組播也稱多播,是一種單個(gè)發(fā)送者對(duì)多個(gè)接收者的通信技術(shù),組播過程如圖1所示,發(fā)送端只需發(fā)送一份數(shù)據(jù),所有加入組的接收端都能得到同一份數(shù)據(jù),大大節(jié)約了網(wǎng)絡(luò)帶寬,減少了發(fā)送端服務(wù)器的負(fù)荷。因此,組播模式的網(wǎng)絡(luò)克隆能夠節(jié)省傳輸時(shí)間。
筆者做過統(tǒng)計(jì),利用網(wǎng)絡(luò)對(duì)拷功能,復(fù)制一臺(tái)機(jī)器至少需--要30分鐘,復(fù)制一個(gè)教室89臺(tái)機(jī)器至少需要3個(gè)小時(shí),而網(wǎng)絡(luò)克隆復(fù)制一臺(tái)單機(jī)只要5分鐘左右,復(fù)制一個(gè)教室89臺(tái)機(jī)器只要45分鐘左右,分別是前者的6倍和4倍。
1.3.2無PXE功能的引導(dǎo)
在運(yùn)用網(wǎng)絡(luò)克隆技術(shù)進(jìn)行機(jī)房的日常運(yùn)維時(shí),還應(yīng)考慮PC機(jī)系統(tǒng)崩潰如何迅速恢復(fù)的問題,其中關(guān)于無PXE功能引導(dǎo)的問題需要特別關(guān)注。
早期的計(jì)算機(jī)一般不具備PXE功能,想要實(shí)現(xiàn)網(wǎng)絡(luò)克隆,就必須解決本地啟動(dòng)的效率問題。如果能夠利用同傳系統(tǒng)或某些軟件的多重引導(dǎo)機(jī)制,讓機(jī)器從硬盤的某一個(gè)分區(qū)啟動(dòng)(而不是移動(dòng)介質(zhì)),就有可能解決效率問題(也不必每臺(tái)機(jī)器插拔介質(zhì))。
例如,海光藍(lán)卡可以設(shè)置多重引導(dǎo)功能。如果新建一個(gè)DOS引導(dǎo)分區(qū),加入下面一段引導(dǎo)程序Autoexec bat,可以實(shí)現(xiàn)PXE網(wǎng)絡(luò)同樣的功能。
Rem NetGhost Tor DHCP Cllent,Verslon 8 11 20
@ECHO OFF
PROMPT$P$G
SET DIRCMD=/4
DOSKEY>nul
SMARTDRV
MOUSE>nul
ZENO
ECHO
BREAK ON
SET TZ=GHO-08 00
call etdolt bat檢測(cè)網(wǎng)卡,加載驅(qū)動(dòng)(與config sys配合)
et etblnd com
echo L13,yp鍵盤模擬,回車歌鈦“y”
rem set/at=%rendom%%%20+1,not supported under dos
71
aset t=random(20)
隨機(jī)延時(shí),錯(cuò)時(shí)連接服務(wù)
choice Restore the image to dmk mIcyn/ty,%t%,n
echo[13,13p
echo
lf errodevel 2 goto end
echo Loading
cdmenu創(chuàng)建映像,會(huì)話名稱力abc
Ghost—clone,mode=prestore,src=@MCabc,dst=1 1-sure
cd、
echo[13,yp
REM CHOICE/TY,60/N>NUL,wart for a mmute
CHOICE Restart the computer ,/c yn/n
echo L13,13p
IF ERRORLEVEL 2 GOTO END
SHUTDOWN R
END
ECHO Now you are ln MS-DOS 7 10 prompt TypeHELP
for help
ECHO
DOS分區(qū)的net目錄中存放有網(wǎng)刻工具客戶端的程序文件。DOS系統(tǒng)的配置文件config sys中要包含如下設(shè)置
DEVICE= etpcrdet dos
檢測(cè)網(wǎng)卡
DEVICE= etprotman dos/1 et協(xié)議管理
DEVICE= etdls_pkt dos加載驅(qū)動(dòng)
DEVICE=ANSI SYS/X鍵盤模擬
本文給出的是筆者前些年用過的方法,迄今依然有實(shí)際參考價(jià)值。
1.3.3收隼和修改IP地址
公共機(jī)房的IP地址一般為靜態(tài)指定,網(wǎng)絡(luò)克隆工具本身并不會(huì)自動(dòng)收集和修改學(xué)生機(jī)的IP地址,在以前的系統(tǒng)維護(hù)過程中,都是采用人工批量修改方式,比較費(fèi)時(shí),也容易指定成重復(fù)IP地址。
為了使克隆后的系統(tǒng)能夠自動(dòng)修改IP地址,還需要在制作樣機(jī)系統(tǒng)鏡像文件之前先收集MAC-IP地址對(duì)照表,對(duì)此可以利用免費(fèi)的IP掃描軟件,這類工具比較多,筆者在實(shí)際工作中使用了HNHV-IPG-30軟件,其操作方面如圖2所示。操作流程為IP掃描設(shè)置>全(半)自動(dòng)參數(shù)設(shè)置_>開始掃描_>配置文件一>退出程序的流程,其中點(diǎn)擊[配置文件]按鈕生成hIlllv imm文件。
IP掃描軟件生成的地址格式可能不符合后面的IP修改軟件的要求,需要作格式轉(zhuǎn)換。例如可以寫—個(gè)SCKrHp bat批處理程序,從hnhv mi中提取出MAC-IP地址對(duì)照表mac im,為制作樣機(jī)系統(tǒng)鏡像文件時(shí)提供地址信息。scamp bat代碼如下
@echo off
setlocal enabledelayedexpanslon
hnhv-IPG-30
if not exIsl hnhvlnl f
@echo掃描收集來的地址配置又件不存在!
@echo
pause
goto end
findstr“一一一一一”hnhvml>pcmfotxt
@echo[Config]>address txt
@echo Gateway=>>address txt
@echo Gwmetrlc=0>>address txt
@echo Mask=255 255 255 0>>address txt
@echo WorkGroup=Workgroup>>address txt
@echo[Ilsq>>address txt
for/f”tokens=1-3 delims==”%% ln(pcmfo txt)do(
set m=%%I
set‘m=m=l”
@echomI=%。/oJ,%%k>>address txl
lf exist maclnI f
copy macInl mac bak
del macmI
)
Fen address txt macmf
del pclnfo txt
end
利用IP修改工具(可以使用免費(fèi)的Modilp軟件)的操作步驟為,如圖3所示,鉤選自動(dòng)修改、修改后重啟,點(diǎn)擊[添加至啟動(dòng)項(xiàng)],最后退出操作流程(下一步就是制作鏡像文件了)。注意IP自動(dòng)修改僅對(duì)網(wǎng)絡(luò)連接的“本地連接”有效。
2增量安裝
由于教學(xué)計(jì)劃和需求的變化,教學(xué)應(yīng)用軟件也需要更換,完全利用網(wǎng)絡(luò)克隆技術(shù)來應(yīng)對(duì)臨時(shí)變化的安裝任務(wù),并不是時(shí)效性最佳方式。新版的網(wǎng)絡(luò)對(duì)拷功能提供了增量同傳模式,可以解決這個(gè)問題,但同樣有前文討論過的缺點(diǎn)。筆者通過不斷摸索和測(cè)試,在網(wǎng)絡(luò)克隆的基礎(chǔ)上,利用文件組播軟件、批處理、定制安裝等手段,縮短了文件傳輸?shù)臅r(shí)間,提高了軟件安裝的自動(dòng)化程度。
2.1文件組播軟件
公共機(jī)房通常采用電子教室軟件來教學(xué),因此,可以利用電子教室軟件來解決增量文件的傳輸和分發(fā)。但是這種方式有比較明顯的缺點(diǎn)傳輸大容量文件時(shí),傳輸速度很慢,而且中途若有一臺(tái)電腦沒傳成功,會(huì)導(dǎo)致其他電腦也要重傳一次,效率很低。利用文件組播軟件來代替電子教室的文件分發(fā)功能,就能很好地解決上述問題。
文件組播軟件是用于局域網(wǎng)文件的“一對(duì)多”批量傳輸軟件,基于UDP協(xié)議,能有效提高傳輸速度,并減輕服務(wù)器負(fù)載(利用組播模式進(jìn)行的數(shù)據(jù)傳輸,我們已經(jīng)在網(wǎng)絡(luò)克隆中見識(shí)過了)。它的特點(diǎn)是可以真正同時(shí)地進(jìn)行文件傳送,學(xué)生機(jī)越多,總體速度就越快,適合于大文件的批量傳輸。
筆者測(cè)試過,利用組播軟件傳輸文件,在同一機(jī)房條件下,504MB大的文件用電子教室的文件傳輸?shù)?00臺(tái)學(xué)生電腦需要16分鐘,而用組播軟件只需2分34秒時(shí)間,兩者相差6倍。組播傳輸大大縮短了傳輸時(shí)間,而且中間即使有幾臺(tái)傳輸失敗,也不會(huì)影響其他電腦的傳輸。
“HOU文件多播”是一款不錯(cuò)的組播軟件(作者網(wǎng)頁見http//wwwyryznet)。筆者早前使用時(shí),一次只能選擇一個(gè)文件進(jìn)行傳輸,為此還寫了一段AutoIt代碼,使其一次可以選多個(gè)文件進(jìn)行傳輸(圖4)。在撰寫本文時(shí),HOU文件多播軟件已經(jīng)出了lob版,支持文件夾傳輸,解決了這個(gè)問題。組播軟件通過發(fā)送端(DMCSender exe)和接收端(DMCRece]ve exe)共同配合實(shí)現(xiàn)文件或文件夾的傳輸。
2.2定制安裝
在機(jī)房中利用組播軟件來分發(fā)應(yīng)用軟件的安裝包到PC終端,可以大幅度節(jié)約安裝過程中傳輸環(huán)節(jié)所用的時(shí)間。但是,在終端上進(jìn)行Windows應(yīng)用程序的安裝時(shí),很多步驟需要逐臺(tái)地進(jìn)行人機(jī)交互操作,也很費(fèi)時(shí)。如果能夠定制軟件的安裝,讓軟件的安裝過程自動(dòng)化,就可以結(jié)合組播軟件的分發(fā),實(shí)現(xiàn)整個(gè)機(jī)房軟件的增量安裝。AutoIt可以完成這樣的工作。它是一個(gè)設(shè)計(jì)用于Wmdows GUI中進(jìn)行自動(dòng)化操作的免費(fèi)軟件,能夠進(jìn)行流程控制,通過摸擬鍵盤按鍵、鼠標(biāo)移動(dòng)和對(duì)控件操作來實(shí)現(xiàn)自動(dòng)化任務(wù)。
例如,安裝計(jì)算機(jī)等級(jí)考試的考生端軟件,其圖形用戶界面GUI常常會(huì)出現(xiàn)[下一步]、[安裝]、[完成]等操作,需要人機(jī)交互。對(duì)此可以定制一段Autolt代碼來自動(dòng)化安裝過程
Opt(“WmTitleMatchMode”.2)
Run(“ddJksazb一級(jí)考生端exe”)
等待窗口生效,點(diǎn)擊[下一步]
WmWaltActtve(“一級(jí)考生瑞”,“一級(jí)考生瑞”)
ControlChck(“一級(jí)考生瑞”?!耙患?jí)考生瑞”,”Bunonl”)
等待窗口生效,占擊[安裝]
WmWattActtve(“一級(jí)考生端”,“開始安裝”)
ControICl~ck(“一級(jí)考生端”,“開始安裝”,”Buttonl”)
#等待窗口生效,點(diǎn)擊[完成]
WmWa~tActlve(“一級(jí)考生端”?!俺晒Φ鼗裳b”)
ControlCItck(“一級(jí)考生瑞”,“成功地安裝”,“Buttom1”)
編寫好代碼后,用AutoIt自帶的編譯工具將程序代碼編譯成可執(zhí)行文件。
在后續(xù)的安裝中,利用電子教室軟件的“文件分發(fā)”和“遠(yuǎn)程命令”功能,遠(yuǎn)程運(yùn)行定制的安裝程序,就能完成自動(dòng)安裝過程了。
3結(jié)束語
我們看到,在公共機(jī)房的軟件系統(tǒng)維護(hù)中,數(shù)據(jù)傳輸方面花費(fèi)的時(shí)間成本是相當(dāng)多的,充分利用基于組播協(xié)議的傳輸技術(shù)可以大幅度節(jié)省時(shí)間,提高傳輸效率。此外,在應(yīng)用軟件的安裝方面,靈活運(yùn)用一些自動(dòng)化腳本技術(shù),也能夠極大地提高軟件的批量安裝效率。