路 遙, 范雪松, 崔 建
(北京大學計算中心,北京100871)
計算機實驗教學面對的是全校文、理、工、醫(yī)多專業(yè)多學科的本、研學生,面對不同學科知識體系的需求,計算機實驗教學平臺的建設也有著應對不同需求的不同功能。其實教育在培養(yǎng)學生成長的過程中,一直都在進行著手和腦的實踐訓練,從小先鍛煉孩子的認知和手腳的靈活性,大一點的時候鍛煉手和腦配合的協(xié)調(diào)性,隨著孩子的不斷成長對于體魄和心智的培養(yǎng)從未間斷過,而到了大學里的教學課程中,也應該讓學生繼續(xù)著動手實踐和理論學習的交融,這是經(jīng)過驗證的培養(yǎng)學生獨立思考能力、優(yōu)秀的學術素養(yǎng)、開闊的創(chuàng)造創(chuàng)新能力最切實有效的方式方法。
高校計算機實驗教學示范中心是開展計算機實驗教學的重要平臺,保證計算機實驗教學系統(tǒng)的穩(wěn)定運行是實施實踐教學活動的基礎,直接影響著教學工作的開展和實踐教學效果[1]。多年來高校的計算機實驗室、多媒體教室都在信息技術的飛速發(fā)展中不斷升級更新,很多計算機實驗室中嘗試應用新的技術、新理念和新模式都來源于管理大型服務器機房中積累的經(jīng)驗[2]。在計算機實驗室管理中可以深刻地感受到隨著計算機實踐教學模式的改變而日益增長的多樣化需求,傳統(tǒng)管理模式在很多方面都有些力不從心,無法做到靈活高效應對實際遇到的計算機教學應用需求[3]。很多基于硬件的改造升級只能在環(huán)境或外圍淺層次去改善計算機實驗教學條件,而內(nèi)在的管理技術拓展和實驗教學模式融合才是計算機實驗教學提升綜合能力,尋求機房發(fā)展瓶頸突破的關鍵[4]。
管理計算機實驗教學示范中心中的計算機軟、硬件及網(wǎng)絡是很多管理工作員的基本任務之一,尤其是系統(tǒng)軟件是最繁瑣的一項任務,為了滿足上機教學用戶的多種需求和實驗室承接各種不同應用的實際運營,多個不同的操作系統(tǒng)、多種不同應用軟件以及快速響應的系統(tǒng)切換、更新和還原都是管理工作人員在實際工作中天天面臨的問題。眾所周知,現(xiàn)在計算機實驗室的計算機系統(tǒng)管理和系統(tǒng)智能應用被熱推虛擬化技術,其在計算機應用領域的應用大有顛覆傳統(tǒng)機房系統(tǒng)管理模式的趨勢[5]。大家熟知機房使用的虛擬化技術主要可以分為VDI(虛擬桌面架構Virtual Desktop Infrastructure)和VOI(虛擬系統(tǒng)架構Virtual OS Infrastructure)[6]。在實際使用中可以簡單地根據(jù)各自特性歸結為VOI趨向于系統(tǒng)部署管理,VDI 趨向于云桌面應用管理,所以本文探討的計算機實驗室系統(tǒng)管理與部署最適合使用的虛擬化技術就是基于VOI的[7-8]。目前商業(yè)化的解決辦法是通過購買基于VOI的虛擬化系統(tǒng)管理軟件實現(xiàn)計算機實驗室的系統(tǒng)部署和管理。但商業(yè)軟件價格不菲,對于經(jīng)費緊張和需求并不是非常迫切的實驗室來說可能不是好的選擇,因此我校設計并完善了一套使用免費應用程序、自主編寫代碼,并成功部署運行的計算機實驗室系統(tǒng)管理方案[9-10](以下簡稱綜合系統(tǒng)管理方案)(見圖1)。
圖1 綜合實驗室系統(tǒng)管理方案
該方案充分考慮了不同角色的使用者對于實驗室系統(tǒng)的不同需求,并且進行相應的權限分配,同時兼顧到了課程教學、上機實驗、考試培訓等諸多靈活的系統(tǒng)使用模式,對實驗室系統(tǒng)進行了分層次分步驟地建設與管理,可以靈活滿足各方面需求,充分發(fā)揮實驗室系統(tǒng)的效用。
綜合系統(tǒng)管理方案包含了計算機系統(tǒng)的制作配置、軟件安裝和設置、系統(tǒng)鏡像制作分發(fā)、系統(tǒng)自動初始化配置、不同系統(tǒng)之間的自動切換控制等五部分。
要建立管理系統(tǒng),首先需要完成所需的計算機系統(tǒng)的制作與配置。傳統(tǒng)計算機實驗室的計算機系統(tǒng)多安裝微軟的操作系統(tǒng),目前比較普遍的是Windows7 和Windows10,大部分的計算機實驗室采用1 到2 個系統(tǒng)即可滿足大部分使用需求,一個系統(tǒng)用于正常教學使用,一個用于特殊的使用需求。
軟件安裝和設置,除了大量開源軟件以外,商業(yè)正版軟件的安裝建議都使用網(wǎng)絡版許可的認證方式,后期便于多系統(tǒng)的部署及激活。個別軟件需要的運行權限較大,在安裝完畢后建議在對應的文件夾中提升權限。目前我校的使用環(huán)境是操作系統(tǒng)采用KMS 機制進行注冊激活。購買的商業(yè)軟件均使用網(wǎng)絡版許可方式進行認證運行,開源軟件種類繁多,版本升級較快,與授課教師協(xié)商后選用主流穩(wěn)定版本,每學期進行更新升級。在安裝好系統(tǒng)軟件后需要設置好計算機自動配置系統(tǒng)參數(shù)的無人應答響應程序和文件,做好上述工作后再使用Windows 自帶的Sysprep 命令對系統(tǒng)進行初始化封裝,這也是在制作系統(tǒng)鏡像前的最后一步。
系統(tǒng)鏡像的制作和分發(fā),這是商業(yè)軟件最突出的優(yōu)勢環(huán)節(jié),我校使用過兩種免費方案,第1 種采用傳統(tǒng)的較早版本的GHOST軟件通過網(wǎng)絡實現(xiàn)客戶端和教師端的磁盤映射連接,每臺客戶端運行GHOST程序可以實現(xiàn)系統(tǒng)制作上傳到服務器和從服務器上讀取鏡像文件進行系統(tǒng)恢復。第2 種采用目前最流行的免費開源的FOG軟件,對準備好的客戶端系統(tǒng)通過PXE 與服務器連接并上傳封裝好的系統(tǒng)鏡像,同時也可以實現(xiàn)分發(fā)部署系統(tǒng)。
采用GHOST的方案比較簡單,客戶端通過USB啟動盤加載網(wǎng)卡驅動,通過命令行NET USE命令與服務器磁盤進行映射連接,運行提前配置好的批處理文件。
該方案對于管理人員的技術水平要求不高,只要第一次配置完,平時恢復系統(tǒng)時只用插拔個USB 啟動盤即可實現(xiàn)系統(tǒng)恢復,但傳輸速度較慢,服務器壓力大。
采用FOG的方案運行效率更高,F(xiàn)OG是一個基于Linux的免費、開源、圖形界面的應用程序,支持計算機實驗室使用最多的微軟Windows系統(tǒng)(XP、Vista、7、8/8.1、10)以及Linux 和Mac OS X,并且支持Web 界面的管理操作,其摒棄傳統(tǒng)的磁盤、光盤、U 盤等引導介質,客戶端計算機通過PXE引導連接到服務器后自動下載一個小型的Linux 客戶端程序,實現(xiàn)后續(xù)的系統(tǒng)備份和恢復等功能,本文使用的是REDHAT Linux,同樣的硬件和網(wǎng)絡環(huán)境下FOG方案比GHOST的方案效率高出100%,但對系統(tǒng)管理員技術要求較高[11]。比較有意思的是在我校舉行的第42 屆ACM-ICPC 國際大學生程序設計競賽全球總決賽期間,與ICPC 組委會的技術團隊(來自美國、俄羅斯、加拿大、德國、瑞士、意大利等多個國家高校的技術人員)一起工作,他們都反饋自己在使用FOG 程序進行各種場合下的系統(tǒng)備份、恢復和部署工作,對于FOG的評價極高,因此實驗室采用FOG 的方案用于計算機實驗室系統(tǒng)的部署與管理[12]。
系統(tǒng)自動初始化配置,這部分編寫了相應的配置程序(見圖1)。
圖1 自動初始化配置
根據(jù)當前計算機網(wǎng)卡的MAC地址進行匹配,從提前編排好的系統(tǒng)配置信息清單中讀取對應的數(shù)據(jù),通過運行命令行去配置當前計算機的機器名、IP 地址、子網(wǎng)掩碼、網(wǎng)關、DNS、加域環(huán)境、配置權限等內(nèi)容(見圖2)。
圖2 配置信息列表
程序自動運行過程中安排了多次計算機的自動重啟,保證每一步配置的生效,根據(jù)程序運行最后一步是通過kms命令去激活Windows 系統(tǒng)和Office 軟件(見圖3),代碼設計在系統(tǒng)環(huán)境變量中可以查看當前自動配置進行的步驟是否順利完成,所有操作均寫入自定義的日志文件中。
圖3 操作日志記錄
系統(tǒng)自動執(zhí)行完配置程序后將會停留在Windows登陸界面,如果配置成功將可以看到域用戶登錄的選項,多個系統(tǒng)情況下每個系統(tǒng)的配置方式一樣,至此此臺計算機可以投入使用。
不同系統(tǒng)之間的自動切換控制,這部分也是自主編寫的代碼進行操作,通過Windows系統(tǒng)中的bcdedit命令進行修改系統(tǒng)中的標識和默認順序,實現(xiàn)了開機直接進入系統(tǒng),不給用戶提供系統(tǒng)選擇菜單,做到其他非當前選擇的系統(tǒng)對用戶隱身。控制開機進入到哪個系統(tǒng)是通過Java程序編寫系統(tǒng)標識,預先設定一臺服務器作為目標機器,該服務器可以和計算機實驗室內(nèi)的計算機進行網(wǎng)絡通信,這里設置的特定端口為3575,通信過程中發(fā)現(xiàn)服務器給的指令標識要切換進入特定系統(tǒng),實驗室內(nèi)的計算機將自動重啟切換(見圖4)。
圖4 系統(tǒng)自動切換
由于篇幅有限不在此展開闡述全部流程的運行細節(jié),以上5 步可組成一套綜合的計算機實驗室系統(tǒng)部署和管理方案。在多年計算機實驗室管理工作中,技術人員的工作經(jīng)常是要不停地更新計算機的操作系統(tǒng),盡管有各種輔助的商用軟件,但對于新產(chǎn)品的調(diào)研往往并不能完全滿足日益增長的使用需求,這時候就需要有自身具備以開源應用為基礎,二次開發(fā)尋求更適合自身使用環(huán)境的綜合方案[13],需換位思考,將發(fā)展重點重新回歸到最初的發(fā)展、建設、服務理念上,針對老師和學生在實踐教學中遇到的問題進行總結,如何提高計算機實踐教學效率[14],如果集中讓學生同步進行授課與動手實踐的融合,如何更充分地發(fā)揮計算機機房在實踐教學中的功能[15],如何更好地運用熱點技術、新理念和現(xiàn)有資源,以計算機實驗教學的溯源需求為切入點[16],為老師和學生提供更便利的計算機實驗教學平臺功能、支持和服務是我們真正要解決和攻克的問題。