Linux運維工程師必須掌握的基礎技能有哪些?
來自:知乎
作者:Tanky Woo
Tanky Woo Python/運維 at 知道創宇,http://tankywoo.com
這個問題挺好的,回答這個問題也是對自身的審查,看看自己還欠缺哪些。(所以我估計得好好思考下,也許下一刻我就會突然驚醒,發現我還是戰渣)
首先限定在Linux運維工程師上
回答僅代表我想到,不代表我都會
技能:
1、Linux基礎
包括對Linux整體的理解/使用和基本命令:
了解Linux FHS : Filesystem Hierarchy Standard,國人寫的這本書不錯 Linux系統架構與目錄解析 (豆瓣)
入門Linux:鳥哥的Linux私房菜.基礎學習篇(第三版) (豆瓣) 個人認為鳥哥的這本書是一本非常好的入門書
基本操作命令:Google,如Linux command cheat sheet
熟悉至少一個內置編輯器: vi, nano
至少熟悉一個發行版(或系列),建議作為伺服器常用的如Centos, Debian, Ubuntu,可以了解多個常用發行版
個人使用/開發盡量在Linux上,比如我前期選擇了 Gentoo Welcome – Gentoo Linux ,非常Cool的一個Linux發行版,配合官方的 Handbook Handbook:Main Page,可以學到很多東西
2、運維的命令:
運維相關的工具(命令),了解它能解決很多問題。
前幾天剛回答了一個問題:如何才能更深入的學習linux?
裡面的圖在這裡也可以用到:
可以對著圖對學習了解這些命令 (抱歉圖片的原始來源我沒有搜到,如果有朋友知道,麻煩告訴我,謝謝 感謝 @jeremy yang 的提示,已經搜到來源 http://www.brendangregg.com/linuxperf.htmlhttp://www.slideshare.net/brendangregg/linux-performance-analysis-and-tools)。
另外我個人也會對平時用到的這些工具做一個整理和記錄,總結到我的個人維基上:Wiki · Tanky Woo
3、基礎服務:
LAMP或LNMP :Apache/Nginx,MySQL,PHP/Python/Perl LAMP (software bundle)
FTP
DNS
SAMBA
NTP
DHCP
...
可以本地搭建練練手
這裡推薦鳥哥另外一本書 伺服器架設篇: 鳥哥的Linux私房菜 (豆瓣)
4、運維平台工具:
也在這個問題 如何才能更深入的學習linux? 里提到了:
Nagios
Puppet
Zabbix
Cacti
SaltStack
....
可以選擇性的折騰下,因為這個涉及到業務,沒有實際環境,很難去理解他們的功能和特點。
5、腳本:
必備:Shell
額外:Python,Perl...
6、底層:
Linux C,內核
7、網路:
網路是非常重要的一塊
把《TCP/IP協議詳解》多看幾遍,理解。
熟練使用tcpdump等抓包工具
8、安全:
防火牆配置,如 iptables, ipset
9、硬體:
介面類型
查看硬體信息
知道各類型伺服器,如塔式、機架式、刀片式
10、其它:
了解更多特定技能要求的方式:
Google搜"Linux運維工程師 招聘",看看他們的需求。
最後推薦一本書:Unix/Linux系統管理技術手冊 UNIX/Linux 系統管理技術手冊 (豆瓣)
後續想到再做補充
素養/處理方式:
除了技能,我覺得素養(態度)也可以談談
這個正好看到右邊相關問題:運維工程師需要具備哪些性格特質?
1、安全
運維人員的許可權很大,所以一定要保證帳號/私鑰的安全。
最好使用加密工具存儲。比如truecrypt,1password
基於本地存儲。切勿用網盤,也不建議用lastpass等
ssh私鑰添加密碼
以上任何一點都很重要,否則弄丟了,風險會非常大。
2、責任心
如上面那個帖子里 @山大 提到的 Owner 意識
遇到報警,第一時間處理,而不要等著他人去處理
如果無法處理,應該第一時間讓同事協助幫忙,而不要禁止報警,讓問題掩蓋
3、細心
你的任何一個操作,都可能造成系統的損壞、業務出問題。所以敲命令時一定要細心、再三確認。你敲的再快,也就節省那麼一點時間,出了問題才是大事。
4、推進/改善
如果代碼有問題,導致系統開銷很大,比如負載,io等。應該第一時間和開發部門確認,要求優化代碼。
5、進取心/不斷學習
運維的知識範圍很廣,要不斷學習。遇到問題,做好分析記錄,事後還可以在部門內分享交流。
這也是我為什麼熱衷於寫技術博客和維基的原因,好記性不如爛筆頭。記錄整理的過程也是一個思考升華的過程。
再給一個乾貨,我們公司(知道創宇)的技能表:http://blog.knownsec.com/Knownsec_RD_Checklist/v3.0.html,裡面的技能點非常全面,也包含了運維相關
※人人學編程
※老生常談-從輸入url到頁面展示到底發生了什麼
※雙11前1小時,阿里程序員發現重大bug……
※做開發十年,我總結出了這些開發經驗
※Node.js對於Java開發者而言是什麼?
TAG:程序猿 |
※Web前端開發工程師需要掌握哪些核心技能?
※Excel有哪些需要熟練掌握但很多人不會的技能?
※Web前端開發工程師需要掌握的核心技能
※沒有掌握咖啡freestyle,是沒有資格交朋友的
※Excel 中需要熟練掌握的技能,很多人都不會!
※Nature:該如何掌握工作與生活的平衡
※身為Apple Watch用戶 這些技巧你掌握沒
※e-crutch 智能設計拐杖,讓治療師及時掌握和反饋患者康復情況的創意產品
※搶先體驗IPhone8新功能?隱形指紋黑科技來了,掌握核心技術的竟是這家公司
※蔡依林泳衣外穿?!只要掌握bodysuit的精髓你也可以
※蔡依林泳衣外穿!只要掌握bodysuit的精髓你也可以
※學Excel必須要掌握的「星級」教程
※利用聲音感測技術,Momsense能讓用戶掌握嬰兒哺乳情況
※Angelababy教你掌握冬裝服飾搭配技巧!
※掌握這幾個技能,你就可以加入arashi軍團了!
※Java新手必掌握的基礎知識
※騷氣的假動作有多難?掌握這點基礎一切so easy
※結構工程師的必備基本功,你掌握的如何?
※用雙手掌握自己的新聞:Inoreader