[分享] Linux 工程師10項不可不知的技能

作者: Debian (Debian)   2015-07-07 03:07:11
(在某個社團看到的linuxpilot網站分享文章,就原封不動的貼過來分享一下。)
現在找工作不容易,有人會問要成為一個負責 Linux 系統工程師,需要掌握哪方面的技
術?這次就來介紹一下。
Linux如果是學習可以選用 Red Hat或CentOS,特別是 CentOS 在企業中用得最多,當然
還會有其它版本的,但學習者還是以這兩個版本學習就行,因為這兩個版本都是兄弟,沒
區別的,有空可以再研究一下openSUSE,有些公司也喜歡用的,至於需要的技術就有以下
幾方面。
1、Linux系統基礎,這個不用說了,是基礎中的基礎,連這個都不會就別幹了。參考書籍
,可以看鳥哥Linux基礎篇,至少要掌握60%內容,沒必須全部掌握,但基本命令總得會吧

2、網路服務,服務有很多種,每間公司都會用到不同的,但基礎的服務肯定要掌握。如
FTP、 DNS、SAMBA、郵件伺服器,這幾個大概學一下就行。LAMP和LNMP必須熟練,所指的
不是光光會架設,而是要很熟悉裡面的設定才行。因為公司最關鍵的絕對是網頁伺服器,
所以nginx和Apache要熟悉,特別是nginx一定要很熟悉才行。有些公司還會用Tomcat,這
個也最好學一下。其實網路服務方面不用太擔心,一般公司的環境都已經搭建好,就算有
新伺服器或讓你改,公司會有相應的說明文件讓你參照來弄,不會讓你亂來的,但至少相
關的配置一定要學熟,而且肯定是編譯安裝多。那些模組要熟悉一下他的作用,特別是
PHP那些模組。
3、Shell腳本和另一個腳本語言。Shell是運維人員必須具備的,不懂這個連入職都不行
。至少也要寫出一些系統管理腳本,最簡單也得寫個監控CPU,記憶體比率的腳本吧,這
是最最最基本了。別以為會寫那些猜數字和計算什麼數的,這些沒什麼作用,只作學習意
義,寫系統腳本才是最有意義,而另一個腳本語言是可選的,一般是3P,即Python、Perl
和PHP。PHP就不需要考慮了,除非你要做開發,個人建議學Python會比較好,難實現自動
化營運。Perl文本處理很強大,反正這兩個學一個就行了。
4、sed和awk工具,必須要掌握,在掌握這兩個工具同時,還要掌握正則表達式。這個就
痛苦了,正則是最難學的表達式,但結合到sed和awk中會很強大,在處理文本內容和過濾
Web內容時十分有用。不過在學Shell的同時一般會經常結合用到的,所以學第3點就會順
便學第4點。
5、文本處理命令,sort、tr、cut、paste、uniq、tee等必學,也是學習第3點時一併學
習的。
6、資料庫首選MySQL,別問為什麼不學SQL Server和Oracle,因為 Linux 用得最多絕對
是MySQL。增刪改查必學,特別要學熟查,其它方面可能不太需要。因為負責營運人員使
用最多還是查,哪些優化和開發語句不會讓你弄的。
7、防火牆,不學不行。防火牆也算是個難點,說難不難,說易不易,最重要弄懂規則。
如果學過CCNA的朋友可能會比較好學,因為iptables也有NAT表,原理是一樣的,而
FILTER表用得最多,反正不學就肯定不合格。
8、監控工具,十分十分重要。個人建議,最好學Cacti、Nagios和Zibbix,企業用得最多
應該是Nagios和Zibbix。反正都學會這些吧,但Nagios會有點難,因為會涉及到用腳本寫
自動監控,那個地方很難。
9、群集和熱備,這個很重要,肯定要懂的,但到了公司就不會讓你去弄,因為新手基本
不讓你碰。群集工具有很多,最好學是LVS。這是必學的,最好也學學nginx群集,反向代
理,還有熱備,這個就更多工具能實現了,有些公司是自己開發熱備工具的。MySQL熱備
也要學,就是主從複製,這個別說容易,其實不容易的,要學懂整個流程一點也不容易,
只照著做根本沒意思。
10、數據備份,不學不行。工具有很多,但至少要把RAID的原理弄懂,特別是企業最常用
的1+0或0+1,自己做實驗也要弄出來。備份工具有很多,如tar、dump、rsync等,最好多
了解一下。
說到這10點已經夠你受了,應該可以入門了。因為有些技術會比較難學,例如Apache和
nginx中,還有些很重要的技術,如系統調優和服務優化,還有程序優化,這些在沒接觸
工作前很難學習到的,所以先把這10點學了吧,估計要學熟至少3個月不止,就腳本那部
分已經讓你很吃力了,建議是先學熟Shell,等工作後再學另一門腳本語言,這樣會比較
好。以上就是踏入 Linux 營運工程師需要掌握的工具,其實還有很多工具要掌握的,但
你在學習環境中是很難學到。最後再提醒一下,這裡所指的工具相當於技能,而不是像
Windows或Ubuntu那些圖形化工具,那些工具沒用的。還有學 Linux 就別裝圖形界面,這
樣虛擬機就不用吃太多記憶體。
作者: filiaslayers (司馬雲)   2015-07-07 09:42:00
embedded system又是另一回事了
作者: LINGZ (肥兔小欽)   2015-07-07 09:51:00
超多對岸用語...
作者: a07051226 (葡萄糖)   2015-07-07 10:46:00
是我看太多還是,我除了優化那類的,看不出來哪裡有對岸用語
作者: chang0206 (Eric Chang)   2015-07-07 11:00:00
還滿多吧 入職?本文?? 還有一些口氣都不像台灣寫的
作者: Bencrie   2015-07-07 12:33:00
啊就港商啊 XD
作者: s9209122222 (海海海)   2015-07-07 14:07:00
該死的,為什麼要把系統和工具設計得那麼麻煩
作者: fourdollars (四元)   2015-07-07 14:59:00
我也只是3,4,5略懂略懂而已,所以不能算是工程師?
作者: yupog2003 (屁股)   2015-07-07 15:36:00
4,5,9不會
作者: kerwinhui (kezza)   2015-07-07 18:54:00
這篇說的應該是sysadmin而不是工程師system engineer, sysadmin 和 engineer 是三回事
作者: OrzOGC (洞八達人.拖哨天王)   2015-07-07 19:16:00
工具人
作者: Fata9 (Fata)   2015-07-07 19:58:00
感謝分享心得
作者: Kitakami (在妳身上揉來揉去)   2015-07-07 20:34:00
工具人QQ
作者: GoldDeath (有事寫信請勿傳訊)   2015-07-07 23:34:00
都不太熟ㄟ..XD
作者: mitsui0309 (比琪老師粉嫩嫩唷~~)   2015-07-09 02:48:00
舉手問一下,都學會的話值幾k?
作者: Hazukashiine (私は幸せです)   2015-07-09 14:57:00
都學得精的話,我覺得 100K 不是問題,但是不在臺灣
作者: pizzahut (...)   2015-07-15 17:32:00
推樓上,可能連一半都沒有..

Links booklink

Contact Us: admin [ a t ] ucptt.com