開始Linux的學習以後,請不要用Windows的工做方式來思考問題,由於它們之間確實有很大的不一樣,好比它們之間的內存管理機制、進程運行機制等都有很大不一樣,所以拋開Windows的那種思惟,用全新的理念嘗試去挖掘Linux身上特有的潛質,對初學者是相當重要的。編程
必定要習慣命令行方式安全
Linux是由命令行組成的操做系統,精髓在命令行,不管圖形界面發展到什麼水平,命令行方式的操做永遠是不會變的。Linux命令有許多強大的功能:從簡單的磁盤操做、文件存取,到進行復雜的多媒體圖像和流媒體文件的製做,都離不開命令行。雖然Linux也有桌面系統,可是X-window也只是運行在命令行模式下的一個應用程序。服務器
所以,能夠說命令是學習Linux系統的基礎,在很大程度上學習Linux就是學習命令,不少Linux高手其實都是玩兒命令很熟練的人。也許對於剛剛從Windows系統進入Linux學習的初學者來講,馬上進入枯燥的命令學習實在太難,可是一旦學會就愛不釋手。由於它的功能實在太強大了。網絡
理論結合實踐架構
有不少初學者都會遇到這麼一個問題,本身對系統的每一個命令都很熟悉,可是在系統出現故障的時候,就無從下手了,甚至不知道在何時用什麼命令去檢查系統,這是不少Linux新手最無奈的事情了運維
說到底,就是學習的理論知識沒有很好地與系統實際操做相結合。編程語言
不少Linux知識,例如每一個命令的參數含義,在書本上說得很清楚,看起來也很容易理解,可是一旦組合起來使用分佈式
卻並不那麼容易,沒有屢次的動手練習,其中的技巧是沒法徹底掌握的。ide
人類大腦不像計算機的硬盤,除非硬盤壞掉或者硬盤被格式化,不然儲存的資料將永遠記憶在硬盤中,並且時刻能夠調用。而在人類記憶的曲線中,必需要不斷地重複練習纔會將一件事情記得比較牢。學習Linux也同樣,若是沒法堅持學習的話,就會學了後面的,忘記了前面的。還有些Linux初學者也學了不少Linux知識,可是因爲長期不用,致使學過的東西在很短的時間內又忘記了,長此以往,失去了學習的信心。學習
可見,要培養本身的實戰技能,只有勤於動手,肯於實踐,這也是學好Linux的根本。
學會使用Linux聯機幫助
各個Linux的發行版本的技術支持時間都較短,這對於Linux初學者來講每每是不夠的,其實當安裝了完整的Linux系統後其中已經包含了一個強大的幫助,只是可能你尚未發現它,或者尚未掌握使用它的技巧。例如,對於tar命令的使用不是很熟悉,那麼只要在命令行輸入「man tar」,就會獲得tar的詳細說明和用法。
主流的Linux發行版都自帶了很是詳細的幫助文檔,包括使用說明和FAQ,從系統的安裝到系統的維護,再到系統安全,針對不一樣層次用戶的詳盡文檔。仔細閱讀文檔後,60%的問題均可在這裏獲得解決。
學會獨立思考問題,獨立解決問題
遇到問題,首先想到的應該是如何本身去解決這個問題,解決方式有不少,好比看書查資料、網絡搜索引擎搜索和瀏覽技術論壇等,經過這幾種方式,90%的問題都能獲得解決
獨立思考並解決問題,不但鍛鍊了本身獨立解決問題的能力,在技術上也能獲得快速提升。若是經過以上方式實在解決不了的話,能夠向人詢問,獲得答案後要思考爲什麼這麼作,而後作筆記記錄解決過程。最忌諱的方式是隻要遇到問題,就去問人,雖然這樣可能會很快解決問題,可是長久下去遇到問題就會依賴別人,技術上也不會進步。
學習專業英語
若是想深刻學習Linux,必定要嘗試去看英文文檔。由於,技術性的東西寫的最好的,最全面的文檔都是英語寫的,最早發佈的高新技術也都是用英語寫的。即使是非英語國家的人發佈技術文檔,也都首先翻譯成英語在國際學術雜誌和網絡上發表。安裝一個新的軟件時先看Readme文檔,再看Install文檔,而後看FAQ文檔,最後才動手安裝,這樣遇到問題就知道緣由了。所以,學習一點專業的英語是頗有必要的。
Linux學習路線圖
Linux運維或管理人才是企業目前急需的技術人才之一,筆者根據10多年Linux相關工做經驗,總結出了一套學習Linux的線路圖,你們能夠此線路圖爲依據,抓住重點,分清主次,相信必定能達到事半功倍的效果。若是讀者能認真學習完並掌握本線路圖所涉及的技術要點,那麼也就基本掌握了企業對Linux運維或管理人才的基本應用需求。
Linux學習線路圖以下圖所示,本線路圖分爲初級、中級和高級三個階段:初級階段主要是對Linux基礎知識以及系統基本應用的介紹,要掌握的內容較多,若是初次接觸Linux,那麼入門仍是有必定難度的,Linux注重的是命令操做,所以初級階段以學習基礎命令爲主,多看書、多實踐是學好命令的根本;中級階段以服務器常見配置爲主,涉及各類應用服務器的配置、網絡配置、系統安全配置等幾個方面。此階段的難點在於各類服務器的搭建,對綜合知識要求較高;高級階段的重點是編程語言、集羣架構兩個方面,此階段的發展方向是高級運維工程師或系統架構師,要成爲系統架構師,熟練掌握一門編程語言是必須的,而Linux下常見的各類集羣架構、分佈式架構也是高級運維工程師必需要掌握的。