《跟阿銘學Linux》作者李世明:談不上告白,就是幫女友轉型而已(圖靈訪談)

劉敏ituring發表於2017-08-31

enter image description here

訪談嘉賓:阿銘,本名李世明,阿銘Linux培訓創辦者,猿課聯合創始人,從事網際網路運維工作8年多,先後就職於Discuz、騰訊、好貸,從最基礎的運維到高階運維工程師,再到運維部門負責人,運維過的網站從訪問量十幾萬PV到上億PV,經歷過各種各樣的突發事故,運維實戰經驗非常豐富。

2011年,阿銘開始為女友撰寫電子版Linux入門教程,到目前為止已經累計幫助數十萬人。多年來在Linux領域積累了豐富的經驗,熟悉Linux系統架構、效能調優等技術。

2013年建立阿銘Linux培訓,目前已經培訓多期學員。在從事Linux運維培訓工作中積累了豐富的教學經驗,培訓過的學生薪資大多在8000元以上。


訪談話題:

跟技術開發工作相比,運維工作包括哪些內容?工作中的挑戰有哪些?

運維工作更多的是,維護伺服器的環境和配置,解決生產環境的故障。用shell或者python開發一些指令碼,實現自動化,運維工作的很大一部分就是協助開發人員完成一些需求。工作中最大的挑戰在於,當一些較大的事故出現的時候,運維人員能不能在最快的時間內恢復業務。平時,我們要加強技能的修煉,多去吸取別人的經驗,還要儘可能地想到業務中可能出現的故障點,提前找到預備方案。只有這樣,才能在遇到緊急事故的時候,做到臨危不亂、胸有成竹。

我們知道您的運維實戰經驗非常豐富,也經歷過各種各樣的“突發事故”。請談一談給您留下最深印象的一次運維突發事故?從這次經歷中,您又收穫了什麼?

經歷過的大大小小運維事故非常多,有的大到全線癱瘓,可以說每次事故的解決都是運維團隊的一次成長。最近一次經歷過的、比較大的事故是DDoS攻擊,對方打過來的量最多的時候超過了300G。一開始的量並不大,我們藉助第三方的CDN防禦,還能應付。隨後,對方有把業務徹底打死的趨勢,量持續地增加,最終導致CDN方直接回源。這樣的話,機房根本扛不住,敵方就能最終封死IP,使業務徹底癱瘓。最後,我們只能接入了專業的產品,防範DDoS攻擊。

通過此次事故,我意識到,只要產品足夠優秀,任何公司都一定會遇到競爭對手,有了競爭的存在也就會出現一些不正當的手段。這種大流量攻擊的出現有很大可能,所以需要提前做好預防,一開始可以購買低配版的防禦套餐,如果問題加劇,可以再升級防禦體系。另外,公司的業務儘量分佈在不同的機房甚至是不同的城市,以分攤風險。

創辦“阿銘Linux培訓班”和“猿課”的初衷是什麼?

最早僅僅是為了滿足群裡朋友的需求,通過錄制一套視訊,再結合我寫的電子版教程,幫助群友學習Linux。後來陰差陽錯地就做成了培訓,其實,在最早的時候,我並不是奔著做培訓這個方向的。

越來越多的學生開始信任我,願意來報名我的培訓班,我只能在工作和培訓中二選一,最終我捨棄了工作,專職做起了培訓。最開始培訓學生的幾年,我是一邊工作一邊培訓的。因為付出的精力有限,對於報名的學員來講我覺得是不公平的,所以決定全職做培訓了。

為什麼會想到給自己的女友寫本技術入門書?這算是理工男最長情的告白方式嗎?

談不上告白,就是幫女友轉型而已。當年,她辭掉了工作,處於待業狀態,所以急需一份工作。要想快速學成,就得快速入門,所以我用了不到兩個月的時間寫出了這本書的電子版。我一邊寫,女友一邊看。她的學習效率很高,學習的速度甚至比我寫書的進度都要快

市面上有很多關於Linux的入門圖書,比如《鳥哥的私房菜》《Linux就該這麼學》《Linux從初學到精通》等,這本書的優勢在哪裡?

各有各的優點吧。我自認為,自己寫的這本《跟阿銘學Linux》並不難,即使是沒有接觸過Linux的朋友也是如此,還有一點就是,我的這本書主要是幫助讀者應對找工作而編寫的,書中介紹的知識點都是我多年工作中所真切用到的技術,沒用到的或者幾乎不用的,並不會出現在書裡。

對於運維人員來說,Linux作業系統真的是“百毒不侵”,更受青睞嗎?

當然不是,如果厲害的黑客想要入侵系統,還是很容易得手的。Linux系統同樣也存在這樣那樣的漏洞,比如去年的心臟出血漏洞,幾乎所有的發行版本都有中招。Linux和Windows平臺不一樣,加上它的門檻高一些,黑客攻擊時付出的成本要遠高於得到的價值,所以就沒必要去研究入侵如何Linux了。

怎麼看待Linux運維的發展前景?

網際網路可以大致分成幾個階段,以前是傳統的網際網路,現在是移動網際網路,再過幾年可能就會出現智慧網際網路,不管是何種場景,伺服器、資料、網路通訊都是必須存在的,只要有伺服器的存在,那麼就少不了Linux,更少不了Linux運維。隨著雲端計算日趨成熟,越來越多的企業使用雲伺服器,雖然傳統的IDC應用場景會減少,但是伺服器的數量卻是在增加的。運維的需求量自然是不會變少的,Linux運維的前景沒有任何問題。但需要注意的是,運維技術日新月異,很多企業也都會隨波逐流,自動化、智慧化運維是將來的趨勢,所以掌握這方面的技能對於運維人員來說十分關鍵。

如何理解“In UNIX, everything is a file”?Linux上的檔案和Windows上的檔案有什麼區別?

在UNIX以及類UNIX系統裡,一切皆檔案,磁碟、程式、外設等全部都是用檔案來表示的,這也是UNIX系統的設計思想。在Windows系統裡,這很明顯是不可能的。Linux和Windows本就是兩個相差很大的作業系統,它們的核心設計形態、檔案系統型別、記憶體管理機制等都不一樣。

Linux系統下,如何有效地避免因為rm -rf 而誤刪檔案?誤刪檔案後,怎麼才能恢復?

嚴格的規範制度,系統許可權一定要限制到位,不該給的許可權堅決不給,root許可權只有在必要的時候才給到。要想避免誤刪檔案,可以給rm命令搞一個自定義的指令碼,比如,當執行rm命令時,要提醒3次才會刪除,避免誤操作。同時,也可以在指令碼中實現這樣的功能,刪除的檔案先要備份到一個大的磁碟分割槽。萬一誤刪檔案,首先要儘可能地避免對磁碟進行頻繁地寫操作,然後解除安裝掉分割槽,使用資料恢復工具嘗試恢復。

很多知識是耦合的、相互依賴的。初學者在真正學習Linux之前,還需要了解哪些預備知識?

網路基礎知識要學一下。簡單的計算機硬體知識也要了解。對於網路知識,最好看一下CCNA相關的資料,而計算機硬體的話,推薦大家學一下計算機組成原理相關的書籍,這些知識點都不用太深究,瞭解即可。

在幫助學生掌握Linux運維的過程中,您認為初學者最容易犯哪些錯誤?

首先說下學習態度,急功近利,好高騖遠,是我見過最多的。而在學習方法上,有的同學只是快速看課程、看書,雖然進度不慢,但效果並不好,這是因為沒有動手去做實驗,更沒有總結自己的筆記。

您認為,學生需要對Linux掌握到怎樣的程度,才能滿足企業的基本要求?

就拿我的這本書《跟阿銘學Linux》來說,把書中的內容掌握到80%,去應聘一個初級的運維工程師是沒有問題的。這裡需要掌握的技能有:Linux基礎知識,包括各種命令、磁碟、使用者、許可權等,LANMP,tomcat,java,mysql,叢集,監控,shell,等等。


更多精彩,加入圖靈訪談微信!

相關文章