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