一、 選擇適合自己的Linux發行版 談到linux的發行版別,太多了,可能誰也不能給出一個準確的數字,但是有一點是能夠必定的,linux正在變得越來越盛行, 面臨這麼多的Linux 發行版,打算從別的體系轉到linux體系來的初學者可能會感到迷惑,即便是忠誠的 Linux 用戶也沒有時刻和精力去挨 ...
一、 選擇適合自己的Linux發行版
談到linux的發行版別,太多了,可能誰也不能給出一個準確的數字,但是有一點是能夠必定的,linux正在變得越來越盛行, 面臨這麼多的Linux 發行版,打算從別的體系轉到linux體系來的初學者可能會感到迷惑,即便是忠誠的 Linux 用戶也沒有時刻和精力去挨個測驗,因而初學者在學習linux的之前,需求有一個清晰的方向,挑選一個合適自個的體系開端學習linux至關重要!下麵咱們就分類介紹。大數據Linux學習資料分享群119599574
1.1 初學者入門首選-redhat系列
在學習redhat系列linux之前,首先要瞭解以下redhat linux各個發行版本之間的關係。
1.Red Hat Linux
Red Hat Linux是redhat最早發行的個人版本的linux, 其1.0版本於1994年11月3日發行。雖然其歷史不及其它linux發行版本悠久,但比起很多的Linux發行套件,Red Hat 的歷史悠久得多。自從Red Hat 9.0版本發佈後,RedHat 公司就不再開發桌面版的 Linux發行套件,Red Hat Linux停止了開發,而將全部力量集中在伺服器版的開發上,也就是 Red Hat Enterprise Linux 版。2004年4月30日,Red Hat公司正式停止對Red Hat 9.0版本的支持,標誌著Red Hat Linux的正式完結。原本的桌面版Red Hat Linux發行套件則與來自開源社區的 Fedora進行合併,成為 Fedora Core 發行版本。
目前Red Hat分為兩個系列:由Red Hat公司提供收費技術支持和更新的Red Hat Enterprise Linux,以及由社區開發的免費的Fedora Core。
2.Fedora Core
Fedora Core(縮寫為FC)被紅帽公司定位為新技術的實驗場地,許多新的技術都會在 FC 中檢驗,如果穩定的話紅帽公司則會考慮加入 Red Hat Enterprise Linux 中。
Fedora Core 1發佈於2003年年末,而FC的定位便是桌面用戶。FC提供了最新的軟體包,同時,它的版本更新周期也非常短,僅6個月。由於版本更新頻繁,性能和穩定性得不到保證,因此,一般在伺服器上不推薦採用Fedora Core。
其實可以這麼認為,Fedora就是Red Hat發行Red Hat企業版linux的一個實驗版本,以用戶做測試,為Red Hat企業版發佈奠定基礎。
3.Red Hat Enterprise Linux
Red Hat Enterprise Linux(縮寫為RHEL,Red Hat的企業版)。Red Hat現在主要做伺服器版的linux開發,在版本上註重了性能和穩定性以及對硬體的支持。 由於企業版操作系統的開發周期較長,註重性能、穩定性和服務端軟體支持,因此版本更新相對較緩慢。
RedHat Enterprise Linux又分為4個版本 Advanced Server(AS)、ES Workstation(WS)、Desktop,它們的差別不太大,只是功能方面的差別。
4.Centos
CentOS全名為“社區企業操作系統”(Community Enterprise Operating System)
CentOS產生的背景:
Redhat發佈Redhat 9。0後,不再開發redhat 10,11……,全面轉向Redhat enterprise linux(簡寫為rhel)的開發,和以往不同的是,新的redhat企業版要求用戶先購買lisence,redhat同時承諾確保產品的穩定性,安全性。rhel二進位代碼不再提供下載,而是作為redhat 服務的一部分,但源代碼依然是開放的。在這種情況下,出現了centos、whitebox、dao 等等一批open source的企業版本,其中以centos最為活躍。
下麵講述centos是如何製作產生的:
CentOS社區將Redhat的網站上的所有源代碼下載下來,進行重新編譯。由於AS/ES/WS是商業產品,因此,必須將所有Redhat的Logo和標識改成自己的CentOS標識。比如將AS4.0原版的SRPM源碼編譯後,換上Centos社區的logo,這樣就成為了CentOS 4.0。Redhat Enterprise Linux AS4 Update1的源碼編譯後,就成為了CentOS4.1。AS4 Update2的源碼編譯後,就成為了CentOS4.2等等。CentOS就是這樣產生的。
因此,可以說CentOS就是Redhat的AS/ES/WS的免費版本,使用centos可以獲得與redhat 企業級linux一樣的功能和性能。同時centos還提供免費的長期升級和更新服務。因此, 在眾多的RHEL的克隆版本中,CentOS是很出眾很優秀的。
雖然說centos是RHEL的克隆,但並不是一模一樣,所說的克隆是具有100%的互換性。對於centos其實不盡相同,RHEL的軟體在CentOS上面不能保證100%的正常工作。
在瞭解了Redhat系列各個版本的差異後。其實我們就找到了為何選擇Redhat linux作為初學者入門學習的理由了。
首先:在國內,乃至是全世界的Linux用戶最熟悉、最耳聞能詳的發行版肯定就是Red Hat了。因為Red Hat是linux界的“老大”,美國Red Hat公司發佈的Red Hat linux是商業上運作最成功的一個Linux發行套件,因此Red Hat公司發行的linux值得信任, Red Hat linux的功能和性能也毋庸置疑。
其次:Red hat現在擁有龐大的網路用戶群體,網路linux資源基本90%都是基於Redhat linux的,如果您在學習過程中遇到任何問題,隨便搜索網路,就有成千上萬的答案展示在你面前。
第三: Red Hat linux系列版本相互補充,相得益彰:如果你第一次接觸linux,那麼建議你先安裝Fedora Core, Fedora Core安裝簡單,對硬體支持很好,界面也很華麗,同時也可以體驗Redhat linux的最新功能;如果你對linux有一定的瞭解,需要深入學習,建議你使用CENTOS系統;如果你是在做linux企業級應用,建議你使用RHEL版本。
最後: redhat應用範圍廣,具有典型性和代表性,很多系統(例如紅旗redflag,中標linux,Oracle發佈的Enterprise Linux )都是以Red Hat linux為基準的,因而,可以說學會了Red Hat linux,就能觸類旁通,其它類似的linux系統也能很快掌握; 現在周圍學習linux的一般也都是以redhat linux為主,這樣交流方便,學習中出現問題,更容易得到解決。同時redhat linux的安裝和使用也是最簡單的,因此,基本上不會在”裝系統”上浪費過多時間。
大數據Linux學習資料分享群119599574
1.2 企業級應用首選-suse linux
企業級的應用追求的是可靠性和穩定性,這就要求構建企業級應用的系統平臺具有高可靠性和高穩定性。企業級linux的發行版本就是解決的這個問題。
SUSE是德國最著名的Linux發行版,在全世界範圍中也享有很高的聲譽。2003年11月4日,Novell公司對外宣佈將收購SuSE。2004年1月該收購順利完成,Novell同時將SuSE正式命名為SuSE Linux。 Novell公司收購suse,加速了suse linux的發展, suse linux無論在桌面市場還是伺服器市場都更加專業化,據不完全統計,suse linux現在歐洲linux市場占有將近80%的份額,大部分關鍵性應用都是建立在suse linux下。由於suse 進入中國時間較短,同時加上suse在中國的營銷模式短時間不能被國內接受,因此現在suse在中國的市場份額還不是很大,但是這些並不影響suse linux高可靠與穩定性的事實,隨著suse的發展,相信suse linux在中國的應用會越來越多。
1.3 游戲娛樂首選-Ubuntu Linux
說到linux桌面市場, Ubuntu Linux幾乎占據了桌面linux的半壁江山, Ubuntu Linux主打linux桌面之最,界面美觀, 簡易而不失華麗,如果想在linux下進行娛樂休閑,Ubuntu Linux絕對是首選。
Ubuntu 的安裝非常的人性化,只須按照提示一步一步進行,安裝與Windows一樣簡單!並且,Ubuntu被譽為對硬體支持最好最全面的Linux 發行版之一,許多在其他發行版上無法使用,或者在預設配置時無法使用的硬體,在Ubuntu上都能輕鬆搞定。因此你可以像安裝windows一樣輕鬆的安裝Ubuntu。盡情體驗Ubuntu linux帶來的樂趣。
1.4 linux作為伺服器是發展趨勢
在上面的章節中主要介紹了幾種最常見的linux發行版本,其實linux的發行版本還有很多很多,比較常見的還有Debian GNU/Linux, Mandriva, Gentoo,Slackware, Knoppix,MEPIS, Xandros,國產的紅旗redflag,中標linux等等,這裡不再一 一介紹,其實縱觀linux的各個發行版,linux發行版本無非是朝著這兩個方面而來,一是伺服器市場,而是桌面市場。
以Ubuntu Linux為代表的linux發行版走的是桌面市場路線,雖然它們給用戶帶來很多驚喜,更新也很快,但是由於桌面市場有著windows這樣強勁的對手,linux桌面發展舉步維艱。
以redhat系列版本為代表的linux發行版現在主要面向企業級linux的伺服器市場,重點開發linux的企業版本,suse linux同樣主要力量也集中在開發企業級linux上面,其它的例如國產redhat flag,中標linux等都重點投入在了linux伺服器市場。linux兩大發佈廠商現在都走了linux伺服器市場的路線,可見linux作為企業級伺服器有著巨大的發展前途,據權威部門統計,linux在伺服器市場的占有率每年都在持續上升。
其實很多linux的應用都是針對linux伺服器的,本書的講述也是主要針對linux在伺服器下的各種應用展開的。
二、 養成良好的linux操作習慣
當你進入linux的學習之後,請不要用windows的工作方式來思考問題,因為它們之間確實有很大的不同,比如它們之間的記憶體管理機制,進程運行機制等都有很大不同,這些異同點將在下麵章節陸續講述,因此,拋開windows那種思維,用全新的理念嘗試去挖掘linux身上特有的潛質,對初學者至關重要。
2.1 一定要習慣命令行方式
Linux是一個命令行組成的操作系統,精髓在命令行,無論圖形界面發展到什麼水平,命令行方式的操作永遠是不會變的,Linux命令有許多強大的功能:從簡單的磁碟操作、文件存取、到進行複雜的多媒體圖象和流媒體文件的製作都離不開命令行。雖然linux也有桌面系統,但是X-window也只是運行在命令行模式下的一個應用程式。
因此,可以這麼說,命令是學習linux系統的基礎,學習linux,很大程度上就是學習命令,很多linux高手其實都是玩兒命令很熟的人。
也許對於剛剛從windows系統進入linux學習的初學者來說,立刻進入枯燥的命令學習,實在太難,但是你一旦學會就愛不釋手。因為它的功能實在太強大了。您未來的學習之路也將會以指數增加的方式增長。
2.2 理論結合實踐
有很多初學者都會遇到這麼一個問題,說到系統的每個命令,都很熟悉,但是在系統出現故障的時候,面對出現問題的linux系統無從下手了。不知道在什麼時候用什麼命令去檢查系統,這是很多linux新手最無奈的事情了。說到底,就是學習的理論沒有很好的與系統實際操作相結合。
很多linux知識,例如每個命令的參數含義,在書本上說的很清楚,看起來也很容易理解,但是一旦組合起來使用,卻並不是那麼容易,沒有多次的動手練習,其中的技巧是無法掌握的。
人類大腦不像電腦的硬碟一樣,除非硬碟壞掉或者硬碟被格式化,否則儲存的資料將永遠而且時刻的記憶在硬碟中。而在人類記憶的曲線中,必須要不斷的重覆練習才會將一件事情記得比較熟。同樣的,學習 Linux 也一樣,如果無法經常學習的話,學了後面的,忘記了前面的;還有些linux初學者也學了很多linux知識,但是由於長期不用,導致學過的東西在很短的時間內又忘記了,久而久之,失去了學習的信心。
可見,增加自己Linux 的實戰技能,只有勤於動手,勇於實踐,這也是學好linux的根本。
2.3 學會使用linux聯機幫助
各個Linux的發行版本的技術支持時間都較短,這對於Linux初學者來說往往是不夠的, 其實當安裝了一個完整的Linux系統後其中已經包含了一個強大的幫助,只是可能你還沒有發現和使用它們的技巧。例如,對於一個linux tar命令的使用,你不是很熟悉,那麼只要你在命令行輸入man tar, 就會得到tar的詳細說明和用法;
主流的linux發行版都自帶了非常詳細的幫助文檔,包括使用說明和FAQ,從系統的安裝到系統的維護,再到系統安全,針對不同層次人群的詳盡文檔。仔細閱讀文檔後60%的問題都可在這裡得到解決。
2.4 學會獨立思考問題,獨立解決問題
遇到問題,首先想到的應該是如何自己去解決這個問題,解決方式很多,看書查資料,網路搜索引擎,技術論壇等等,通過這幾種方式,90%的問題都能得到解決,通過這種方式一方面鍛煉了自己獨立解決問題的能力。另一方面技術上也能得到快速提高。
如果通過如上方式實在解決不了的話,可以向人詢問,得到答案後要考慮為何這麼做,然後做筆記記錄解決過程。最忌諱的方式是只要遇到問題,就去問人,雖然這樣可能會很快解決問題,但是長久下去遇到問題就會依賴別人,技術上也不會進步。
2.5 學習專業英語
如果你想深入學習Linux,一定要嘗試去看英文文檔。因為,技術性的東西寫的最好的,最全面的文檔都是英語寫的,最先發佈的高新技術也都是用英語寫的。即便是非英語國家的人發佈技術文檔,也都首先翻譯成英語在國際學術雜誌和網路上發表。安裝一個新的軟體時先看README,再看INSTALL,然後看FAQ,最後才動手安裝,這樣遇到問題就知道為什麼。因此,學習一點專業的英語是很有必要的。
2.6 Linux學習基本步驟
到這裡,我們總結一下linux的學習路線圖,給各位初學者作為參考。
初級階段:
1. 命令是必須要學的,linux常用的命令大概在80個左右,這些常用命令一定要熟練掌握。
2. 掌握linux軟體包的常用安裝方法,例如源碼安裝,rpm方式安裝等等。
3. 學習安裝設備驅動程式(比如網卡、顯卡驅動)
4. 熟悉Grub/Lilo引導程式及簡單的修複操作。
5. 熟悉Linux文件系統和目錄結構以及linux基本運行原理。
6. 掌握vi,gcc,gdb等常用編輯器,編譯器,調試器。
7. 理解shell別名、管道、I/O重定向、輸入和輸出以及shell簡單腳本編程。
8. 學習Linux環境下的網路基本組建。
高級階段:
1:嘗試閱讀linux內核源碼:
這需要具有一定的C、C++語言基礎,因為C、C++是linux/unix的核心語言,系統代碼都是C寫的。
2:嘗試編譯安裝和調試自己的linux內核:
在閱讀源碼瞭解了linux底層的運行原理後,完全可以編譯一個適合自己的linux系統來。
3:深入學習shell, perl,cgi等腳本語言:
這些腳本語言在linux下非常強大,它們能完成你想做的任何事情,熟練掌握這些語言,可以讓你在linux系統下游刃有餘,如魚得水。
4:構建企業級linux高可用集群體系:
linux下有許多開源免費的集群軟體,使用這些免費的集群軟體完全可以構建出與商業unix體系想媲美的集群體系來。