1. 程式人生 > >Linux運維工程師必須掌握的基礎技能和職業素養有哪些?

Linux運維工程師必須掌握的基礎技能和職業素養有哪些?

這個問題挺好的,回答這個問題也是對自身的審查,看看自己還欠缺哪些。

回答僅代表我想到,不代表我都會 :(

一、技能篇:

1. Linux基礎

包括對Linux整體的理解/使用和基本命令:
瞭解Linux FHS : Filesystem Hierarchy Standard,國人寫的這本書不錯 Linux系統架構與目錄解析 (豆瓣)
入門Linux:鳥哥的Linux私房菜.基礎學習篇(第三版) (豆瓣) 個人認為鳥哥的這本書是一本非常好的入門書
基本操作命令:Google,如Linux command cheat sheet
熟悉至少一個內建編輯器: vi, nano
至少熟悉一個發行版(或系列),建議作為伺服器常用的如Centos, Debian, Ubuntu,可以瞭解多個常用發行版

2. 運維的命令

運維相關的工具(命令),瞭解它能解決很多問題。

前幾天剛回答了一個問題:如何才能更深入的學習linux?

裡面的圖在這裡也可以用到:

可以對著圖對學習瞭解這些命令。

另外我個人也會對平時用到的這些工具做一個整理和記錄,總結到我的個人維基上:Wiki · Tanky Woo

3. 基礎服務:
LAMP或LNMP :Apache/Nginx,MySQL,PHP/Python/Perl LAMP (software bundle)
FTP
DNS
SAMBA
EMAIL
NTP
DHCP

可以本地搭建練練手

這裡推薦鳥哥另外一本書 伺服器架設篇: 鳥哥的Linux私房菜 (豆瓣)

4. 運維平臺工具:

也在這個問題 如何才能更深入的學習linux? 裡提到了:
Nagios
Puppet
Zabbix
Cacti
SaltStack
….
可以選擇性的折騰下,因為這個涉及到業務,沒有實際環境,很難去理解他們的功能和特點。

5. 指令碼:
必備:Shell
額外:Python,Perl…

6. 底層:
Linux C,核心

7. 網路:

網路是非常重要的一塊
把《TCP/IP協議詳解》多看幾遍,理解。
熟練使用tcpdump等抓包工具

8. 安全:
防火牆配置,如 iptables

9. 硬體:
介面型別
檢視硬體資訊
知道各型別伺服器,如塔式、機架式、刀片式

10. 其它:

瞭解更多特定技能要求的方式:

Google搜”Linux運維工程師 招聘”,看看他們的需求。

最後推薦一本書:Unix/Linux系統管理技術手冊 UNIX/Linux 系統管理技術手冊 (豆瓣)

二、職業素養/做事方式:

除了技能,我覺得素養(態度)也可以談談

這個正好看到右邊相關問題:運維工程師需要具備哪些性格特質?

1. 安全

運維人員的許可權很大,所以一定要保證帳號/私鑰的安全。
最好使用加密工具儲存。比如truecrypt,1password
基於本地儲存。切勿用網盤,也不建議用lastpass等
ssh私鑰新增密碼

以上任何一點都很重要,否則弄丟了,風險會非常大。

2. 責任心

Owner 意識
遇到報警,第一時間處理,而不要等著他人去處理
如果無法處理,應該第一時間讓同事協助幫忙,而不要禁止報警,讓問題掩蓋

3. 細心

你的任何一個操作,都可能造成系統的損壞、業務出問題。所以敲命令時一定要細心、再三確認。你敲的再快,也就節省那麼一點時間,出了問題才是大事。

4. 推進/改善

如果程式碼有問題,導致系統開銷很大,比如負載,io等。應該第一時間和開發部門確認,要求優化程式碼。

5. 進取心/不斷學習

運維的知識範圍很廣,要不斷學習。遇到問題,做好分析記錄,事後還可以在部門內分享交流。

這也是我為什麼熱衷於寫技術部落格和維基的原因,好記性不如爛筆頭。記錄整理的過程也是一個思考昇華的過程。

(本文內容整理來自於是:http://www.zhihu.com/question/23665108)