王繼敏
【摘 要】根據(jù)運維行業(yè)的就業(yè)市場變化和企業(yè)對于Linux運維工程師的職業(yè)技能要求,對高校計算機專業(yè)的Linux課程教學內容進行合理的規(guī)劃;根據(jù)Linux課程教學的特點,對以運維為導向的Linux課程教學方法進行了研究,在實踐中摸索了一套較為有效的教學方案,使學生在Linux學習的過程中更加有針對性、主動性和趣味性。
【關鍵詞】Linux;IT運維;場景教學
0 引言
在以往的高校計算機專業(yè)學科教育中,將著重點放在培養(yǎng)學生的編程能力,久而久之使人們產(chǎn)生了偏見,認為學計算機就是學編程。然而實際上,計算機這一學科所涵蓋的遠不僅僅是編程。隨著信息基礎設施的不斷發(fā)展完善,尤其是近年來互聯(lián)網(wǎng)行業(yè)的迅速崛起,IT運維這一行業(yè)對于人才的需求和就業(yè)的吸納越來越可觀。而企業(yè)對于運維人員的職業(yè)素養(yǎng)要求和對于編程人員是有明顯區(qū)別的。這就要求高校針對運維行業(yè)的特點對教學內容和方法進行更加有針對性的設計。由于Linux操作系統(tǒng)在互聯(lián)網(wǎng)行業(yè)成為了應用最為普遍的服務器操作系統(tǒng),所以Linux課程教學成為培養(yǎng)學生的運維素質是一個很好的切入點。
1 傳統(tǒng)的Linux教學分析
目前的高校計算機專業(yè)開設Linux課程一般有兩種情況。一種是作為學習操作系統(tǒng)原理課程的輔助和實踐課程,學生在學習了操作系統(tǒng)原理后通過接觸Linux的一些源代碼來加強對原理和算法的認識;另一種是作為一門獨立的課程開設,但其教學內容會將著重點放在GNU開發(fā)工具鏈的使用、API的調用或者內核模塊的解讀等等。目前這兩種情況都是以培養(yǎng)編程能力和開發(fā)素質為著眼點的,對于培養(yǎng)一個運維工程師可謂根本沒有涉及。而在教學方法上,傳統(tǒng)的Linux教學過程中,雖然也有采用基于項目的教學方法,但始終沒有改變教師講理論為主,學生課后練習為輔的固定教學模式,教學改革只是從教學形式上有所改變,依然沒有改變學生被動學習的局面[1]。而IT運維的特點是知識面廣、實踐性強,這就要求在基于運維的Linux教學改革中,著重培養(yǎng)學生歸納知識的能力和主動學習的能力,著重培養(yǎng)學生動手實踐的能力,從而更有利于培養(yǎng)學生的職業(yè)運維素質。
2 教學內容的改革
傳統(tǒng)的Linux教學是著重于培養(yǎng)邏輯思維能力和編程能力的,筆者針對運維行業(yè)的特點對傳統(tǒng)教學內容進行改革,使之有針對性的培養(yǎng)運維工程師。關于Linux運維,目前業(yè)內還沒有一個統(tǒng)一的定義。就筆者接觸一些運維工程師和親自參與企業(yè)實踐得到的一些直接和間接經(jīng)驗來看,運維工程師在入行時應掌握的主要內容包括:(1)Linux下的常用命令的使用;(2)Linux下的系統(tǒng)管理,包括存儲管理、用戶管理、網(wǎng)絡管理等;(3)部署和維護各種Linux服務器,包括Web服務、FTP服務、DHCP服務、Mail服務等;(4)對Linux下各種網(wǎng)絡服務、應用系統(tǒng)、監(jiān)控系統(tǒng)等進行自動化Shell腳本開發(fā);(5)數(shù)據(jù)庫如MySQL或Oracle的維護;(6)系統(tǒng)性能的優(yōu)化等等。據(jù)此,筆者在以運維為就業(yè)方向的班級開設的Linux課程中,刪減的GNU工具鏈、內核源碼分析等的內容,加重了Shell編程在課程學時的比重,并增加了系統(tǒng)管理、服務器配置等與運維行業(yè)相關的內容。
3 教學方法的改革
雖然近年來不斷對計算機學科教育進行改革,提出了基于項目、任務驅動或者單元驅動的教學法,以改變傳統(tǒng)教學模式,增加實踐教學的比重,但學生僅掌握獨立項目的模塊化實施方案,欠缺對運維過程中出現(xiàn)突發(fā)問題靈活處理的能力[2]。另外由于教學用的實驗環(huán)境和實際生產(chǎn)環(huán)境的差異,導致學生認為教學針對性不強,從而學習積極性受到影響,而當真正就業(yè)后面對實際生產(chǎn)環(huán)境又不知所錯。為此,筆者針對Linux運維的特點,提出了一套教學方法的改革,將貼近生產(chǎn)實踐的運維融合到Linux課程教學中去,從而更有利于培養(yǎng)學生在IT運維方向的職業(yè)素質,為其有針對性的就業(yè)夯實基礎。
3.1 教學環(huán)境設計
在教學環(huán)境上,采用電子教室。但不同于傳統(tǒng)Linux課程教學采用的Windows加VMWare虛擬機的方案,而是采用全Linux解決方案,以使學生充分體驗和使用Linux。在解決視頻廣播及遠程桌面的問題上,不同于傳統(tǒng)的電子教室采用的凌波多媒體教室軟件的方案,筆者為教師端及學生端的電腦都安裝的Ubuntu14.04,在教師端安裝了vncserver,以共享教師機的桌面,而在學生端安裝vncviewer用于遠程桌面連接。這種直接讓學生接觸Linux真實機器的方法,一方面加強了學生對于Linux的操作體驗,另一方面,杜絕部分自制能力較差的學生在課堂上玩電腦游戲等行為。
3.2 實驗環(huán)境設計
在Linux教學中的很多實驗對當前系統(tǒng)環(huán)境有一定的危險性和破壞性,如配置網(wǎng)絡、添加或者刪除Raid、安裝服務等等。很多不當操作會破壞系統(tǒng)的正常環(huán)境,而學生其實也正是在這種不斷的試錯與改正中提高能力的。因此,怎么樣快速恢復受損的實驗環(huán)境是個問題。筆者在自己的課堂上采用了一款非常優(yōu)秀的虛擬機軟件VirtualBox,利用它的系統(tǒng)快照功能實現(xiàn)這個目的。
首先,給學生機器在VirtualBox下安裝一個虛擬的CentOS6.5作為教學系統(tǒng)(這是由于CentOS這一發(fā)行版在目前的互聯(lián)網(wǎng)行業(yè)作為服務器操作系統(tǒng)應用非常廣泛),并配置好該系統(tǒng)的基本軟件和網(wǎng)絡連接,以此作為初始的實驗環(huán)境,并對該初始系統(tǒng)進行系統(tǒng)快照。
然后,當學生做實驗時,啟動虛擬機,并利用宿主機的putty軟件或者命令行ssh客戶端遠程連接虛擬機,在虛擬機里面做各種實驗。如果實驗失敗或者需要重新做實驗時候,只要恢復一下系統(tǒng)快照就可以返回初始的實驗環(huán)境。
3.3 基于場景的四步教學法
傳統(tǒng)教學方式不利于運維職業(yè)素質培養(yǎng)的一個重要原因是課堂教學脫離生產(chǎn)場景。盡管教了學生很多命令、很多參數(shù),告訴學生應該這樣或者不應該那樣,但學生往往會發(fā)出“為什么要這樣做”、“這樣做有什么用”的疑惑。由于脫離生產(chǎn)場景,學生對于所學知識與技能的體會不深,在相當程度上影響了教學效果。
場景化教學要求在教學過程中盡量模擬生產(chǎn)場景,將貼近生產(chǎn)實踐的環(huán)境、項目、任務經(jīng)過適量簡化突出重點后重現(xiàn)在教學過程中。這種教學法秉承“以用為本、學以致用”的教學觀念,對于指導教師的工程實踐經(jīng)驗有較高的要求。筆者在這一教學觀念的指導下,通過以下四個步驟組織整個教學過程。
(1)場景重現(xiàn)。對于Linux運維的每個知識板塊,筆者結合自己已有的工程實踐經(jīng)驗和通過閱讀、考察等方式獲得間接經(jīng)驗,努力為教學過程重現(xiàn)生產(chǎn)場景。例如,在講授Web服務時,傳統(tǒng)方式僅僅是通過測試一個靜態(tài)Web頁面,講解一下Web服務的搭建過程及配置文件的主要參數(shù)等。筆者在實施場景化教學法的過程中,為學生們分發(fā)一個實際可用的在線教學網(wǎng)站源碼讓學生們在各自的實驗平臺上安裝測試,并通過一些專門的工具模擬負載讓學生們觀察Web站點在運行過程中性能的變化。這樣一來,由于接觸到了真實的生產(chǎn)場景,一來學生的學習興趣有了較大的提高,另一方面對于相關的配置參數(shù)的作用的體會則更加深刻。
(2)項目設計。在教學過程中,將Linux運維的各個知識點和技能通過若干個項目來組織,學生通過可擴展的項目案例來逐步學習知識和技能。所有的項目都是一個實際的任務,學生通過完成這一項目從而具備了完成一種任務的能力。
(3)角色模擬。將學生分為若干個小組,小組的每個成員模擬項目中的某個角色,使學生們協(xié)同完成項目任務。當項目任務完成后,還可以將小組內各個成員的角色互換,使其體會不同角色在小組中所起的不同作用及所需掌握的工作技能。例如,在講解用戶權限管理的知識板塊時,筆者設計了一個工作組用戶協(xié)同工作的項目,每個學生小組有三個成員,分別是管理員Tom和普通成員Alice和Jim。該項目任務要求通過某種方式設置一個共享文件夾,該文件夾作為小組協(xié)同工作的目錄;該目錄內每個人都可以新建文件,也可以查看和修改別人的文件,但是除了管理員Tom外其他人不能刪除別人的文件而只能刪除自己的文件;只有管理員Tom可以刪除任何人的文件。學生們通過分別扮演管理員和普通成員,加強了對于用戶權限管理的認識。
(4)自我總結:當項目任務完成后,學生們初步掌握了某項技能,此時應該及時回顧、歸納和總結,將感性認識轉化為理性認識,將知識和技能條理化。筆者通過自己的實踐體驗發(fā)現(xiàn),寫技術博客是一種很好的自我總結的方式。筆者要求學生課后將每個知識板塊寫成技術博客在互聯(lián)網(wǎng)上發(fā)布,并要求學生們分組互評,評選優(yōu)秀的博客文章。一些對于Linux運維很感興趣的學生在課后寫技術博客上投入了的較大了精力,參閱了很多課外資料,文章寫得比較嚴謹而全面,在互聯(lián)網(wǎng)上獲得了比較高的瀏覽量,從而更加激發(fā)了學生的學習興趣和熱情。
總之,通過場景重現(xiàn)、項目設計、角色模擬和自我總結這樣四個步驟,有效的溝通了教學和生產(chǎn),加強了教師與學生、學生與學生之間的交流互動,構架起理論與實踐相結合的橋梁。
4 結束語
隨著信息技術的不斷發(fā)展,IT運維這一行業(yè)對于人才的需求越來越大。而Linux操作系統(tǒng)在當前的信息化基礎設施中扮演非常重要的角色,成為IT運維人員必備的基礎知識和技能。而傳統(tǒng)的高校Linux課程將著重點放在培養(yǎng)學生的邏輯思維能力和提高編程能力方面,不利于運維工程師職業(yè)素質的建立。因而,有必要建立一套以運維為導向的Linux課程教學方案,以更加有利于向社會培養(yǎng)及輸送人才。
通過對課程教學內容的合理取舍、貼近實際生產(chǎn)場景設計教學環(huán)境與實驗環(huán)境,以及基于場景的四步教學法,本文提出了一套在實踐中較為可行的Linux課程教學方案。相比傳統(tǒng)的Linux課程教學,這一教學方案更加有針對性的培養(yǎng)企業(yè)IT運維工程師。
【參考文獻】
[1]田容雨,朱慧.基于計算思維的Linux運維教學改革[J].信息與電腦,2014,09:244.
[2]田容雨,朱慧.基于運維的Linux教學方法改革與實踐[J].新課程研究,2013,06:135-136.
[責任編輯:朱麗娜]