王冠中 徐鸝 邱安波
摘要針對高校公共機房軟件維護的特點,討論了PC機軟件系統整體復制和應用軟件批量安裝的效率問題,給出了解決萬法。實踐表明,充分利用基于組播模式的數據傳輸技未可以大幅度節省網絡復制的時同,靈活運用一些自動化腳本技術,也能夠極大地提高軟件的批量安裝效率。
關鍵詞:公共機屠,軟件維護,組播,效率
中圖分類號TP308文獻標志碼A文章編號1006-8228(2012)01-10-04
0引言
高校公共機房計算機設備使用的頻率很高,容易出現各類軟硬件故障,甚至造成系統崩潰。在這些故障中,有相當一部分是最后需要重新安裝軟件來修復的。另外,高校公共機房是面向全校提供服務的,通常會遇到一些臨時的軟件安裝任務(如計算機等級考試軟件等),往往裝機的臺數很多,時間緊。因此,如何盡快滿足教學需求,提高軟件系統維護效率,是機房管理員必須考慮的問題。公共機房的軟件維護,包括計算機系統中的軟件安裝和恢復。對于批量的計算機系統軟件全新安裝,目前通常采用網絡傳輸的方式實現計算機硬盤上的系統復制,如網絡對拷(這里指固化在一些主板、網卡或還原卡ROM中的代碼)或者網絡克隆(也稱網刻,這里指獨立軟件形式的代碼)。如果只是在計算機系統上新裝軟件,此時不必全部重新傳輸,可以采用另一種方式增量安裝。針對全新安裝和增量安裝,筆者總結了多年的機房軟件系統維護經驗和體會,撰稿以供探討。
1全新安裝
目前在公共機房管理中比較常用的全新安裝方式有網絡對拷和網絡克隆兩種。
1.1網絡對拷
網絡對拷,是指將大量數據在局域網內的不同PC終端之間作高速的傳輸和接收,其目的是整體復制PC機上的軟件系統。網絡對拷的功能代碼嵌入在機器的ROM中,使用前須在各終端硬盤上安裝驅動程序。目前,在一些品牌PC機中,都自帶有網絡對拷功能(如聯想和惠普等,稱為網絡同傳)。有些硬盤保護卡(還原卡)或兼其還原卡功能的網卡也帶有網絡對拷功能(如海光藍卡等)。
在批量維護系統時,選定一臺PC機(發送端)進行初始安裝,然后通過網絡,將數據發送至局域網內的其他PC機(接收端),可以進行—對一或一對多的數據傳輸。
網絡對拷方式一般都與硬盤保護(還原)方式相伴。通常硬盤保護(還原)機制的代碼也固化在ROM中。在網絡對拷前后,一般都需要對硬盤解保護或加保護,這種操作在一定程度上還是比較繁瑣的。假如是PCI插卡,也容易引起松動,從而出現保護失效的現象。
1.2網絡克隆
網絡克隆和網絡對拷相似,也是一種對批量PC機進行數據傳輸的方式。網絡克隆軟件以獨立的軟件形式存在,操作靈活,算法高效。網絡克隆過程按CIS模式進行,服務端等到所有客戶端連接后實施數據傳輸。數據傳輸模式有三種·單點傳送、多點傳送、直接廣播,分別對應于克隆廣播的三個選項單播、組播、廣播。
依據客戶端機器是否支持PXE協議,網絡克隆客戶端有兩類引導方式遠程引導和本地引導。PXE(Pre-boot ExecutionEnvtronment,預啟動執行環境)是一種遠程引導技術,它可以使計算機通過網絡啟動。當計算機引導時,PXE客戶端從眼務端上下載引導程序到本地運行,免去了本地加載引導程序的麻煩。
基于PXE協議的網絡克隆一般過程是服務器啟動后,客戶端首先從DHCP(DynaIrac Host ConfiguraUon Protocol動態主機配置協議)服務得到動態IP地址,再從TFFP(Trivial FileTransfer Protocol,簡單文件傳輸協議)服務得到引導程序,進而由Ghost軟件的數據傳輸服務實現克隆。
如果客戶端機器不具備PXE功能,則需要考慮本地引導,同時需要考慮由此產生的效率問題。
1.3方法討論
1.3.1基于組播模式的網絡克隆
網絡克隆需要事先準備樣機系統的映像文件,而網絡對拷則不必這樣做。但是,網絡對拷方案有比較明顯的缺點。
1、受制于硬件型號。由于硬件的維修和更換,同—個機房的機器配置可能有好幾種,對于異種機器(主板或硬盤不同)之間的系統復制,網絡對拷就顯得無能為力。
2、網絡對拷的速度隨著PC機數量的增加而減慢。
3、還原卡型的網絡對拷方式還受制于PCI插卡的穩定陛,如出現插卡松動的情況,就會引起傳送失敗。
對于批量傳輸整體系統,在網絡克隆實踐中通常采用組播傳輸模式。組播也稱多播,是一種單個發送者對多個接收者的通信技術,組播過程如圖1所示,發送端只需發送一份數據,所有加入組的接收端都能得到同一份數據,大大節約了網絡帶寬,減少了發送端服務器的負荷。因此,組播模式的網絡克隆能夠節省傳輸時間。

筆者做過統計,利用網絡對拷功能,復制一臺機器至少需--要30分鐘,復制一個教室89臺機器至少需要3個小時,而網絡克隆復制一臺單機只要5分鐘左右,復制一個教室89臺機器只要45分鐘左右,分別是前者的6倍和4倍。
1.3.2無PXE功能的引導
在運用網絡克隆技術進行機房的日常運維時,還應考慮PC機系統崩潰如何迅速恢復的問題,其中關于無PXE功能引導的問題需要特別關注。
早期的計算機一般不具備PXE功能,想要實現網絡克隆,就必須解決本地啟動的效率問題。如果能夠利用同傳系統或某些軟件的多重引導機制,讓機器從硬盤的某一個分區啟動(而不是移動介質),就有可能解決效率問題(也不必每臺機器插拔介質)。
例如,海光藍卡可以設置多重引導功能。如果新建一個DOS引導分區,加入下面一段引導程序Autoexec bat,可以實現PXE網絡同樣的功能。
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檢測網卡,加載驅動(與config sys配合)
et etblnd com
echo L13,yp鍵盤模擬,回車歌鈦“y”
rem set/at=%rendom%%%20+1,not supported under dos
71
aset t=random(20)
隨機延時,錯時連接服務
choice Restore the image to dmk mIcyn/ty,%t%,n
echo[13,13p
echo
lf errodevel 2 goto end
echo Loading
cdmenu創建映像,會話名稱力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分區的net目錄中存放有網刻工具客戶端的程序文件。DOS系統的配置文件config sys中要包含如下設置
DEVICE= etpcrdet dos
檢測網卡
DEVICE= etprotman dos/1 et協議管理
DEVICE= etdls_pkt dos加載驅動
DEVICE=ANSI SYS/X鍵盤模擬
本文給出的是筆者前些年用過的方法,迄今依然有實際參考價值。
1.3.3收隼和修改IP地址
公共機房的IP地址一般為靜態指定,網絡克隆工具本身并不會自動收集和修改學生機的IP地址,在以前的系統維護過程中,都是采用人工批量修改方式,比較費時,也容易指定成重復IP地址。
為了使克隆后的系統能夠自動修改IP地址,還需要在制作樣機系統鏡像文件之前先收集MAC-IP地址對照表,對此可以利用免費的IP掃描軟件,這類工具比較多,筆者在實際工作中使用了HNHV-IPG-30軟件,其操作方面如圖2所示。操作流程為IP掃描設置>全(半)自動參數設置_>開始掃描_>配置文件一>退出程序的流程,其中點擊[配置文件]按鈕生成hIlllv imm文件。

IP掃描軟件生成的地址格式可能不符合后面的IP修改軟件的要求,需要作格式轉換。例如可以寫—個SCKrHp bat批處理程序,從hnhv mi中提取出MAC-IP地址對照表mac im,為制作樣機系統鏡像文件時提供地址信息。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修改工具(可以使用免費的Modilp軟件)的操作步驟為,如圖3所示,鉤選自動修改、修改后重啟,點擊[添加至啟動項],最后退出操作流程(下一步就是制作鏡像文件了)。注意IP自動修改僅對網絡連接的“本地連接”有效。

2增量安裝
由于教學計劃和需求的變化,教學應用軟件也需要更換,完全利用網絡克隆技術來應對臨時變化的安裝任務,并不是時效性最佳方式。新版的網絡對拷功能提供了增量同傳模式,可以解決這個問題,但同樣有前文討論過的缺點。筆者通過不斷摸索和測試,在網絡克隆的基礎上,利用文件組播軟件、批處理、定制安裝等手段,縮短了文件傳輸的時間,提高了軟件安裝的自動化程度。
2.1文件組播軟件
公共機房通常采用電子教室軟件來教學,因此,可以利用電子教室軟件來解決增量文件的傳輸和分發。但是這種方式有比較明顯的缺點傳輸大容量文件時,傳輸速度很慢,而且中途若有一臺電腦沒傳成功,會導致其他電腦也要重傳一次,效率很低。利用文件組播軟件來代替電子教室的文件分發功能,就能很好地解決上述問題。
文件組播軟件是用于局域網文件的“一對多”批量傳輸軟件,基于UDP協議,能有效提高傳輸速度,并減輕服務器負載(利用組播模式進行的數據傳輸,我們已經在網絡克隆中見識過了)。它的特點是可以真正同時地進行文件傳送,學生機越多,總體速度就越快,適合于大文件的批量傳輸。
筆者測試過,利用組播軟件傳輸文件,在同一機房條件下,504MB大的文件用電子教室的文件傳輸到100臺學生電腦需要16分鐘,而用組播軟件只需2分34秒時間,兩者相差6倍。組播傳輸大大縮短了傳輸時間,而且中間即使有幾臺傳輸失敗,也不會影響其他電腦的傳輸。
“HOU文件多播”是一款不錯的組播軟件(作者網頁見http//wwwyryznet)。筆者早前使用時,一次只能選擇一個文件進行傳輸,為此還寫了一段AutoIt代碼,使其一次可以選多個文件進行傳輸(圖4)。在撰寫本文時,HOU文件多播軟件已經出了lob版,支持文件夾傳輸,解決了這個問題。組播軟件通過發送端(DMCSender exe)和接收端(DMCRece]ve exe)共同配合實現文件或文件夾的傳輸。

2.2定制安裝
在機房中利用組播軟件來分發應用軟件的安裝包到PC終端,可以大幅度節約安裝過程中傳輸環節所用的時間。但是,在終端上進行Windows應用程序的安裝時,很多步驟需要逐臺地進行人機交互操作,也很費時。如果能夠定制軟件的安裝,讓軟件的安裝過程自動化,就可以結合組播軟件的分發,實現整個機房軟件的增量安裝。AutoIt可以完成這樣的工作。它是一個設計用于Wmdows GUI中進行自動化操作的免費軟件,能夠進行流程控制,通過摸擬鍵盤按鍵、鼠標移動和對控件操作來實現自動化任務。
例如,安裝計算機等級考試的考生端軟件,其圖形用戶界面GUI常常會出現[下一步]、[安裝]、[完成]等操作,需要人機交互。對此可以定制一段Autolt代碼來自動化安裝過程
Opt(“WmTitleMatchMode”.2)
Run(“ddJksazb一級考生端exe”)
等待窗口生效,點擊[下一步]
WmWaltActtve(“一級考生瑞”,“一級考生瑞”)
ControlChck(“一級考生瑞”。“一級考生瑞”,”Bunonl”)
等待窗口生效,占擊[安裝]
WmWattActtve(“一級考生端”,“開始安裝”)
ControICl~ck(“一級考生端”,“開始安裝”,”Buttonl”)
#等待窗口生效,點擊[完成]
WmWa~tActlve(“一級考生端”。“成功地簧裝”)
ControlCItck(“一級考生瑞”,“成功地安裝”,“Buttom1”)
編寫好代碼后,用AutoIt自帶的編譯工具將程序代碼編譯成可執行文件。
在后續的安裝中,利用電子教室軟件的“文件分發”和“遠程命令”功能,遠程運行定制的安裝程序,就能完成自動安裝過程了。
3結束語
我們看到,在公共機房的軟件系統維護中,數據傳輸方面花費的時間成本是相當多的,充分利用基于組播協議的傳輸技術可以大幅度節省時間,提高傳輸效率。此外,在應用軟件的安裝方面,靈活運用一些自動化腳本技術,也能夠極大地提高軟件的批量安裝效率。