<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          寫給 Linux 初學者的一封信

          共 4776字,需瀏覽 10分鐘

           ·

          2021-11-01 11:48

          小牛肉 PS:文章開始前就想問一下大家我這個封面圖設計得怎么樣!!!哈哈哈,整了很長時間

          大家好,我是肖邦

          這篇文章是寫給 Linux 初學者的,我會分享一些作為初學者應該知道的一些東西,這些內容都是本人從事 Linux 開發(fā)工作多年的心得體會,相信會對初學者有所幫助。如果你是 Linux 老鳥,那可能就不需要再往下看啦

          linux

          為啥要學Linux

          作為從事 IT 工作的同學,對 Linux 系統(tǒng)一定不陌生。如今我們在各種領域都能看得到它的身影,比如,手機、服務器、嵌入式、電信設備、大型計算機,以及各種電子類產(chǎn)品都離不開 Linux,它已經(jīng)滲透到互聯(lián)網(wǎng)世界的方方面面了。

          包括那些火熱的技術,比如云計算、虛擬化、容器、大數(shù)據(jù)、人工智能,幾乎都是基于 Linux 技術的,那些平臺系統(tǒng),電商、團購、社交、新聞、快遞,都是部署在服務器端,也幾乎都是基于 Linux 技術的。

          在編程的世界中,Linux 就是主流,不會 Linux 你就可能會格格不入。如果你想進大公司,想學新技術,Linux 一定是一道繞不過去的砍,只有進入了 Linux 系統(tǒng)這扇大門,你才可能成為合格的軟件工程師。

          企業(yè)服務器環(huán)境絕大部分都是 Linux 系統(tǒng),所以不管你是從事前端、后端、運維、測試中的哪一類工作,Linux 都是你必須掌握的基礎知識,只是不同類型工作需要學習 Linux 的方向不同而已。

          經(jīng)驗與建議

          下邊的一些建議都是本人從事 Linux 開發(fā)多年的一些經(jīng)驗總結,相信會對 Linux 初學者有所幫助,當然如果有不準確的地方,還請指正。

          • 一定要自己搭建Linux環(huán)境。Linux 系統(tǒng)學習是很重實踐的,僅學習理論知識是不能真正掌握 Linux 的。我推薦在個人電腦上安裝虛擬機,虛擬機的方式非常靈活,既可以提供 Linux 環(huán)境,也不會影響宿主機的正常使用。對于虛擬機軟件的選擇,可以考慮使用 VMwareVirtualBox 。虛擬機的快照功能一定要用好,尤其是對新手來說,它可以將你不小心搞壞的環(huán)境恢復到初始化狀態(tài),就像是重新安裝了操作系統(tǒng)一樣,從此媽媽再也不用擔心我 rm -rf /* 了。

          • Linux發(fā)行版的選擇。由于 Linux 的強大,目前存在太多的發(fā)行版本了,有些同學在選擇上可能會有些糾結。這里我推薦選擇使用 CentOS 就行,由于免費且穩(wěn)定,國內企業(yè)服務器使用最多的就是 CentOS 了,使用上和 RedHat 幾乎沒有什么區(qū)別。當然你可以選擇 Ubuntu 系統(tǒng),國內服務器使用份額僅次于 CentOS。其實所有發(fā)行版都是基于 Linux 內核的,只是擴展了相關的系統(tǒng)組件和軟件庫,本質上都是 Linux 系統(tǒng),學會了 CentOS 后就很容易上手其它版本的系統(tǒng)了,所以無需太關注和糾結這個問題。

          • 一定要使用命令行。大部分初學者經(jīng)常喜歡安裝圖形桌面,因為我們之前都習慣了 win 或 mac 的圖形操作。但我強烈建議,安裝系統(tǒng)時不要安裝桌面,平時的操作和學習都堅持使用命令行。學習前期可能會比較痛苦,但熬過了陣痛期,熟練使用之后,就能享受到命令行帶來的強大功能。命令行不僅功能強大,而且可以極大的提高效率,因為命令行就意味著能夠自動化,自動化能為你釋放很多重復性的工作,讓你有充足的時間去學習更有價值的知識。另外,圖形界面在 linux 系統(tǒng)上作為一個獨立軟件存在,會額外消耗服務器的資源,企業(yè)的服務器一定是不會安裝圖形的,所以需要你一定要在 Linux 世界中忘掉 windows 的思維方式

          • Linux 是開源的。開源意味著你能夠查看 Linux 源碼,可以從代碼層面理解系統(tǒng)實現(xiàn)的原理,這些可以讓你達到一通百通、醍醐灌頂?shù)男Ч皇呛唵蔚氖褂盟?/p>

          • 養(yǎng)成安全嚴謹?shù)牧己昧晳T。對于初學者來說,雖然大部分時間是在虛擬機上操作,有快照的加持,可以毫無顧忌的進行各種實驗性的操作。但我還是強烈建議初學者一定要養(yǎng)成良好的操作習慣:1.經(jīng)常備份重要的數(shù)據(jù);2.少用 root 用戶進行各種操作;3.敲命令不是越快越好;4.服務器密碼盡可能的復雜些,不要使用 123456 這類弱密碼,服務器很可能被侵入當肉雞;5.服務器密碼不要簡單記錄在文檔上或 U 盤之類的移動設備上;6.對生產(chǎn)環(huán)境一定要有敬畏心

          如何學習?

          高效的學習方法往往能夠幫助你事半功倍,下邊是我分享的一些自己的學習心得和方法,希望對大家有幫助。

          • 一定要多實踐。Linux 是一門實操性非常強的學科,初學者需要多敲命令,多實踐和練習。與學習其它東西是一樣的,大多時候我們不需要非得先將理論知識學的通透后才來實踐動手,而是從實踐中發(fā)現(xiàn)問題后再深度學習,這樣效果可能會更好。

          • 有效的學習方式。說到學習方式,每個人學習的方式可能不太一樣。我推薦 視頻 + 看書 的方式,視頻教程可以讓你快速上手,快速了解相關的概念,而看書可以更加全面的學習具體的細節(jié),會讓你有更多的思考,看書可以作為視頻的補充和擴展。

          • 思考,總結與歸納。不管以什么形式來學習,我們都需要對學習中的每個問題和概念認真思考,需要從 whathowwhy 三個角度進行學習,作為學習的問題模板。學習任何新技術,我們都需要知道這個技術知識點的應用場景,以及能夠解決什么問題,是否有類似的解決方案,此技術點有什么優(yōu)勢

          • 輸出是一種高效學習方法。在學習過程中,必不可少的一個環(huán)節(jié)就是歸納和總結,總結就要輸出,可以是文檔形式的筆記或者其它。我比較推薦寫博客,有條件的話一定要寫,因為寫博客可以幫助你更有效地、更系統(tǒng)的總結和學習。寫博客是一種 的形式,如果能夠將自己學到的知識在博客上清晰的講清楚,教會別人,那才說明你是真正的掌握了它。如果博客寫的不錯的話也能為自己夠積累影響力,對自己將來的求職也會有幫助。另外如果別人從你博客學習到了東西而且覺著不錯的話,會給你點贊、留言、贊賞,這都是對你寫博客和學習的正反饋,同時也能夠刺激你保持學習的興奮和激情,呵呵。

          • 制定明確的學習目標。做任何事,有了目標才能夠走的更遠,少走彎路。我們學習 Linux 也一樣,需要根據(jù)自己的實際情況,制定適合自己的學習目標。個人建議目標不要太大,時間周期也不要太長,要切合實際,比如制定三個月的學習目標。有了目標后,就要確定詳細的學習計劃,細化到每周需要完成的任務列表。注意,你需要為計劃任務指定結果檢驗的方式,比如寫一篇博客文章或是筆記,計劃真實落地才是最困難的,因為執(zhí)行力是一種稀缺資源。

          • 堅持與激情,獲得正反饋。學習是一件逆人性的事情,大部分人在遇到諸多問題后就很容易會放棄。1.合理的學習計劃和結果輸出,能夠讓你繼續(xù)保持學習的激情;2.寫博客、討論交流等方式也可以獲得正向的反饋,從而激勵著你繼續(xù)向前;3.堅持學習也能夠幫你養(yǎng)成良好的習慣,無形中提高自己的執(zhí)行力,個人認為這些收獲可能遠比具體的技術知識更加重要。

          • 如何解決問題。在學習 Linux 技術的時候,初學者肯定會遇到各種 奇怪 的問題,面對這些問題時,我們要學會分析錯誤信息,嘗試以目前學習到的技術來思考找答案,如果解決不了,可以使用搜索引擎,對于初學者遇到的問題,百度一般都能夠解決。如果實在解決不了,可以請教身邊的高手,不過提問問題時,一定要描述清楚問題,帶著謙虛請教的態(tài)度。

          應該學習的基礎知識

          Linux 系統(tǒng)涉及的技術知識點非常廣泛,學習者可以根據(jù)自己的實際情況,選擇相應的主題方向進行學習,不可盲目的跟隨他人的學習路線,有可能適得其反,學習效果事倍功半,得不償失,所以選擇適合自己的學習路線非常重要。

          因為每個人將來從事的工作和方向不同,需要重點學習的內容也不一樣,而且本文目標也只是分享給 Linux 初學者一些實用的經(jīng)驗心得,所以后邊內容中只簡單羅列了最通用和實用的一些技術,這些是學習 Linux 技術的所有同學都應該知道的技術知識點。

          • 學習 vim。在 Linux 系統(tǒng)下,基本沒有什么可以與之競爭的編輯器(不接受反駁),你只需要花費 1-2 天的時間來熟悉 vim 的基本使用操作即可,無需研究那些高大上的各種插件使用技巧。要知道 vim 的學習是有難度的,不過一旦熟練使用后,就會得心應手,能極大提高編輯效率。這里推薦陳皓的《簡明 vim 練級攻略》。

          • 簡單的文件管理。這些都是一些非常基礎的操作與文件的管理命令,如:lslessheadtaildudfln 等,當然 find 是查找文件的非常有用的命令,功能非常強大。

          • 基礎的網(wǎng)絡管理。常用的網(wǎng)絡管理命令,一定要學會使用,這對平時工作或學習時的網(wǎng)絡診斷和網(wǎng)絡配置非常有用。比如 ipifconfig 等網(wǎng)絡命令,還有網(wǎng)絡診斷工具 netstatpingtraceroute 等。

          • 學些 shell 腳本編程。我們知道 Linux 特點之一就是命令行,上邊我們說過,命令行就意味著可以自動化,自動化后就能夠規(guī)模化。shell 腳本就是我們實現(xiàn)自動化的最有效的方式,因為 shell 程序是最擅長與 Linux 內核打交道的。我們可以利用 shell 腳本幫我們做很多重復性的工作,來釋放我們工程師的雙手去創(chuàng)造更大的價值。

          • 熟悉作業(yè)管理。我們需要經(jīng)常在命令行終端上管理應用程序,啟動或關閉程序。你需要知道這些概念,如:進程、進程組、會話、終端,學會使用 jobsfgbgkillCtrl-CCtrl-Z,以及信號的相關操作,需要知道 kill -9 到底是在干什么。

          • 學習使用軟件包的管理。國內最常用的 Linux 發(fā)行版是 ubuntucentos,需要學會使用 apt-getyum 命令來查找和安裝相關的軟件包,當然也要學會試著從源碼編譯方式安裝軟件。

          • 學習簡單的數(shù)據(jù)處理。我們在工作和學習中也會經(jīng)常需要處理文本信息,Linux 在這方面提供了很多的工具,組合起來能夠非常方便的實現(xiàn)強大的功能。常見的命令 sortuniqcutsplit,還有 Linux 經(jīng)典的三劍客 sedawkgrep,這三個工具都是上古神器,功能非常強大,awk 還有專門的書籍來講解它,可見功能之強大與復雜,我們初學者只需要熟練掌握一些常用的功能即可。

          • 學會看文檔。雖然不是具體的技術知識,但它卻非常重要,初學者在學習命令時總是希望能記住所有的參數(shù)和選項,其實這些參數(shù)我們不需要記憶(大腦是用來思考的而不是存儲的),我們可以通過 Linux 手冊來查看,通常使用 man ifconfig 就能夠查看該命令的官方文檔說明,既準確又清晰。當然在遇到問題時,也可以查看手冊來確認命令的使用方法是否正確。

          Linux 系統(tǒng)涉及的技術知識點非常復雜,上述所分享的僅是一些必學基礎知識,如果能夠認真學習并夠掌握好,基本上算是入門 Linux(存活的級別)。如果你是運維方向,至少需要更深入的學習:用戶管理、磁盤管理、系統(tǒng)日常管理、常見服務的搭建、高可用集群、系統(tǒng)監(jiān)控等運維知識;如果你是后端開發(fā)方向,至少需要更深入學些 Linux 操作系統(tǒng)、進程與線程、進程間通信、信號、網(wǎng)絡編程、系統(tǒng)調用、Linux 內核等知識;如果你是嵌入式方向,你至少需要深入研究 Linux 內核源碼、設備驅動程序了。

          本篇文章到此結束,后邊還會更新 Linux 系列文章,文章內容風格會盡量保持通俗易懂、重實踐和實用性,盡可能地幫助到有需要的同學,如果感興趣的話,可以繼續(xù)關注后續(xù) Linux 系列文章。

          瀏覽 46
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲免费看黄网站 | 成人性爱在线播放 | 久草免费极品盛宴 | 丁香婷婷五月色成人网站 | 黄网在线免费 |