想一步步了解和學習linux有關方面的知識有什麼好的書籍或者網路資源材料值得推薦給新手?
大概哪個方面?髮型版,工具,還是嵌入式?
基本的東西搜索引擎一大把,先看看自己要什麼方面的內容吧。用Linux無非是以命令行為主處理日常的事務(尤其以編程為多)。網上的命令行手冊已經很多。
其實學習步驟很簡單
第一步:先裝一個發行版(比如fedora,ubuntu,arch),要麼雙系統,要麼把Windows完全乾掉。
第二步:嘗試完全在Linux環境下解決常見的任務,比如上網,音樂,視頻,購物 (這部分倒不一定用命令行)第三步:嘗試習慣於Linux下的編程,包括C/C++,shell,python等等,這要看你的需求這每一步對新手而言都不容易,機器啟動不了時想死的心都有,但中途放棄就會失敗。
最好的老師是興趣和實踐,其次是google (首先要解決翻牆問題哦)。即使是老手,也記不住那麼多命令和命令行選項,學會的只是一種學習能力,知道去什麼地方找資料是最重要的。說了那麼多,真正這麼做的人是極少的。速成法往往是這樣的:第一步,裝個虛擬機,第二步,熟悉最常用的幾條命令,第三步,跑通hello world。但兩種方案是相通的:無他,但手熟爾。
所以,最後的問題就歸結為:如何把大象放進冰箱。第一步,打開冰箱,第二步,把大象放進去,第三步,把門關上。如何學Linux?為何要學?把它裝上,用就是了。作為一個專門研究Linux學習的團隊,給大家看一下我們對Linux運維學習的總結,歡迎大家拍磚,下面我們團隊整理的學習路線:
運維學習階段,需要分為四個階段,linux初級入門-àlinux中級進階-àlinux高級提升,和資深方向細化。
第一階段:初級入門
初級階段需要把linux學習路線搞清楚,任何學習都是循序漸進的,所以學linux也是需要有一定的路線。
個人建議學習的路線如下:
初級入門:
1、Linux基礎知識、基本命令(起源、組成、常用命令如cp、ls、file、mkdir等常見操作命令)
2、Linux用戶及許可權基礎
3、Linux系統進程管理進階
4、linux高效文本、文件處理命令(vim、grep、sed、awk、find等命令)
5、shell腳本入門(可邊練習邊學習)
第二階段:中級進階
中級進階需要在充分了解linux原理和基礎知識之後,對上層的應用和服務進行深入學習,其中說到服務肯定涉及到網路的相關知識,是需要花時間學習的。
1、TCP/IP網路基礎(差不多CCNA、NP的知識就夠用)
2、Linux企業常用服務(如dns、http、ftp、mail、nfs等)
3、Linux企業級安全原理和防範技巧(系統性能/安全、安全威脅模型和保護方法
4、 加密/解密原理及數據安全、系統服務訪問控制及服務安全基礎
5、iptables安全策略構建
6、shell腳本進階(主要是結合一些應用,寫一些案例)
7、MySQL應用原理及管理入門(能管理和搭建一個個人博客站點)
學到這裡,掌握的基本技能,已經夠用了,已經能做一些基礎的運維工作和簡單維護了。
第三階段:高級提升
1、http服務代理緩存加速(其中主要學習varnish、nginx緩存系統,要對CDN的知識有所了解。)
2、企業級負載集群(其中主要學習nginx、haproxy、lvs要對主要知識熟練掌握,對負載均衡演算法有清晰認識,)
3、企業級高可用集群 (其中需要對keepalived,heartbeat等進行深入講解)
4、運維監控zabbix詳解(主要是zabbix、cacti、nagios等監控系統,現在用的比較多的是zabbix)
5、運維自動化學習(需要學一些開源運維自動化工具的使用如ansible、puppet、cobbler等運維自動化工具)
能掌握到這裡,基本能處理搞定很多工作了,可以去面試高級運維工程師,差不多薪資能達到12-18K左右
第四階段:資深方向進階
1、 大數據方向(需要對hadoop、storm等常見開源大數據系統需要深入了解)
2、 雲計算方向(主要是openstack這套東西,當然像一些kvm等虛擬化技術,也是需要掌握的,現在docker也比較流行)
3、 運維開發(主要是python運維開發)
4、 自動化運維(在之前自動化基礎上做深入)
5、 運維架構師(主要需要廣度,差不多5年左右以上經驗,可以擔當此職位)
另外我們整理了一個學習知識庫,你可以看一下:
【超全整理】《Linux雲計算從入門到精通》系列實戰筆記全放送 | Linux運維部落
推薦的一些社區和論壇:
Linux 私房菜』,http://linux.vbird.org/
Linux中國開源社區
Linux公社 - Linux系統門戶網站
Linux下載站 - 提供全系列Linux發行版系統下載
Linux運維部落 | |國內專業的Linux運維博客平台
推薦的學習書籍:
《鳥哥私房菜-基礎版》
《實戰LINUX_SHELL編程與伺服器管理》
《LINUX命令行與SHELL腳本編程大全第2版].布盧姆.掃描版》
《Linux初學者指南》
《現代操作系統(原書第3版)》
《深入理解計算機系統(原書第2版)》
《linux啟動時是如何載入和管理RAID設備》
《LINUX內核設計與實現》
《深度探索Linux操作系統:系統構建和原理解析》
《TCP.IP路由技術[第一卷]》
《Linux DHCP詳細說明配置文件檔》
《史上最詳細的vsftpd配置文件講解》
《RSADSA authentication on SSH》
《超全的NFS文檔(FOR LINUX)》
《selinux howto》
《構建高性能web站點》
《OReilly DNS and BIND 5th(2006)》
《APACHE+COOKBOOK中文版》
《Apache2.2中文文檔電子書》
《細說PHP(第2版)(含DVD光碟1張)》
《MySQL性能調優與架構設計》
《30天自製操作系統(附光碟1張)》
《Linux From Scratch 7.2 中文版》
《LVS手冊》
《IPVS命令列表參考》
《LVS-HOWTO》官方站點wiki
《3 小時玩轉 iptables 企業版》官方站點
《實戰Nginx:取代Apache的高性能》
《Web伺服器》
《nginx核心講解》
題主,這個與你以後要走什麼路線有關。如果你要走嵌入式開發路線,那就學習Linux內核,如果走運維路線,那就學習「鳥哥的Linux私房菜」。Linux系統安全性高,大多數建站選擇,但是小白上手比較難,是用命令控制的。儘管你用哪個系統,都最好用一下管理軟體功能,可以一鍵部署建站環境和管理雲主機的,例如雲幫手就還不錯啊,是一款跨雲管理兼容windows和Linux系統,還有系統修復和資源告警的全面型雲管理軟體。要是有興趣可以去他家官網看看。
雲幫手 - 集中化伺服器管理軟體?www.cloudx.cnLinux for Beginners: An Introduction to the Linux Operating System and Command Line
Linux Bible
The Linux Command Line: A Complete Introduction
0.推薦,鳥哥私房菜。1.自己搞個虛擬機,在上面寫程序。2.不要嘗試著生活中也用Linux,你會崩潰的。3.虛擬機要經常備份,但是問題的時候能修自己修,修系統能學到不少東西。Linux for Beginners: An Introduction to the Linux Operating System and Command Line
Linux Bible
The Linux Command Line: A Complete Introduction
先學好命令吧 linux命令大全
咋那麼多高手匿名啊……書鳥哥的私房菜,自己先搞個虛擬機,玩熟再考慮要不換系統
推薦閱讀:
※基於Preempt-RT實時SMP Linux系統0:開篇
※openSUSE安裝後怎樣設置成開機需要密碼呢?
※數據科學家的命令行技巧 | Linux 中國
※Linux在運行ls時忽略某些文件或目錄
※Linux查看進程和終止進程的技巧
TAG:Linux |