Linux系統(tǒng)管理入門(mén)必須經(jīng)歷的三步
掃描二維碼
隨時(shí)隨地手機(jī)看文章
我們常常會(huì)看到這樣的問(wèn)題:面對(duì) Linux 系統(tǒng)管理這個(gè)龐大的世界,應(yīng)該從哪里開(kāi)始?說(shuō)實(shí)話(huà),我覺(jué)得這個(gè)問(wèn)題不存在一個(gè)清晰明確的答案。Linux 認(rèn)證并非最理想的選擇。你可以去參加一些培訓(xùn)課程,比如 RHCE.但是,如果沒(méi)有任何背景信息而去參加培訓(xùn),你可能無(wú)法享受到培訓(xùn)帶來(lái)的好處,因?yàn)樗姓n程都有一個(gè)前提假設(shè):你已經(jīng)掌握了一些基本知識(shí)。
熟悉Linux以及發(fā)行版
一個(gè)開(kāi)始系統(tǒng)管理員學(xué)習(xí)的方法是抓起一本相關(guān)主題的書(shū)來(lái)看(編輯推薦:51CTO讀書(shū)頻道的Linux版塊有很多相關(guān)圖書(shū)的樣章)。然后安裝幾個(gè) Linux 版本(參考:幾個(gè)比較知名的發(fā)行版),然后在你喜歡的版本上搞一些 VM 設(shè)置(參考:Linux下三大免費(fèi)桌面虛擬機(jī)評(píng)測(cè))。從一個(gè)版本開(kāi)始,然后繼續(xù)使用這個(gè)版本,至少用上幾個(gè)月。但是,一旦熟悉了那些基礎(chǔ)知識(shí),你就要轉(zhuǎn)向其他發(fā)行版本,看看其他版本是如何工作的,這一點(diǎn)也非常重要。無(wú)論使用哪個(gè)版本,不同之處僅僅在于一些設(shè)計(jì)和平臺(tái)常見(jiàn)通訊。最根本的操作系統(tǒng)還是 Linux,這一點(diǎn)不會(huì)改變。
使用一個(gè)新的平臺(tái)時(shí),有一點(diǎn)非常重要:你必須真正地投入進(jìn)去。對(duì)此,有一個(gè)簡(jiǎn)單的方法:看看你現(xiàn)在正在做的事情,無(wú)論使用哪個(gè)平臺(tái),試著在這臺(tái) Linux 計(jì)算機(jī)上使用相同的方式去做系統(tǒng)的事情。掌握了那些基礎(chǔ)的知識(shí)和操作之后,以后你就應(yīng)該將這個(gè) Linux 版本作為常用的工作平臺(tái)。從低等級(jí)管理能力方面來(lái)看,這種方式并不會(huì)讓你學(xué)到太多;不過(guò),它可以讓你學(xué)會(huì)從用戶(hù)的角度來(lái)思考問(wèn)題。
我一直都認(rèn)為,最優(yōu)秀的管理員一定是從用戶(hù)的角度,從開(kāi)發(fā)者的角度,然后從平臺(tái)(和管理員)的角度,對(duì)問(wèn)題進(jìn)行思考。最后我們還要記住,計(jì)算機(jī)是用來(lái)工作的,而管理員的角色就是確保計(jì)算機(jī)能夠充分發(fā)揮能力來(lái)完成工作。不要迷失了方向:目標(biāo)仍然是做某件工作。
熟悉相關(guān)的應(yīng)用程序/服務(wù)
我最初接觸 Linux 的那段時(shí)間,常常會(huì)感覺(jué)很難與其他人的應(yīng)用程序建立一種關(guān)聯(lián),很難弄清楚他們?nèi)绾问褂盟麄兊挠?jì)算機(jī)和網(wǎng)絡(luò)。之所以很困難,因?yàn)槲覜](méi)有處于他們所在的位置,甚至連跟上最新的情況都很困難。在尋找那種親身體驗(yàn)的機(jī)會(huì)時(shí),我認(rèn)識(shí)到,和一個(gè)應(yīng)用程序建立關(guān)聯(lián)的最好方式就是加入他們的郵件列表。這樣,你就可以看到其他人遇到的問(wèn)題,你也可以提出自己的問(wèn)題,比如為什么那個(gè)事情要用那種特別的方式來(lái)解決,你還可以查看其他人貼出的 bug 報(bào)告。這些信息都清楚了展示了在“真實(shí)世界”中人們是如何使用這個(gè)應(yīng)用程序的,這將為提供一個(gè)很好的根基。大約 14 年之后,我仍然認(rèn)為特定程序的用戶(hù)小組是學(xué)習(xí)一個(gè)應(yīng)用程序的最好場(chǎng)所,你可以了解到如何對(duì)它進(jìn)行管理,最好的部署方式,還有開(kāi)發(fā)者/用戶(hù)如何看待這個(gè)應(yīng)用程序的角度。
編寫(xiě)代碼
最后,編程和實(shí)際寫(xiě)代碼的能力也是有益的。不要相信那種到處流傳的說(shuō)法:管理員無(wú)需寫(xiě)代碼。和周?chē)鷥?yōu)秀的系統(tǒng)管理員聊聊(有很多這樣的人),你會(huì)發(fā)現(xiàn),幾乎每個(gè)人都會(huì)告訴你,他們 40-60% 時(shí)間用于編寫(xiě)腳本,處理應(yīng)用程序,而腳本的開(kāi)發(fā)知識(shí)是有幫助的。我不是說(shuō)你需要搞一個(gè) Java 認(rèn)證,但是你要對(duì) bash 的基本編程有很好理解,至少能夠使用 python、perl 和 ruby 中的一門(mén)語(yǔ)言(必要)。需要了解 unix/c 的傳統(tǒng)想法仍然存在,不過(guò)現(xiàn)在,并不是有很多系統(tǒng)管理員需要深入到驅(qū)動(dòng)程序開(kāi)發(fā)那個(gè)層次,他們需要了解的大多數(shù)函數(shù)代碼可以利用 bash、ruby、perl 或 python 進(jìn)行很好的處理。