Linux基礎(chǔ)知識點大全

2021-02-22    分類: 網(wǎng)站建設(shè)

Linux是每個后端程序員必須要掌握的系統(tǒng),今天小編就給你分享一篇Linux基礎(chǔ)知識點大全,看看你知道多少?


一、 從認識操作系統(tǒng)開始

1.1 操作系統(tǒng)簡介

我通過以下四點介紹什么操作系統(tǒng):

操作系統(tǒng)(Operation System,簡稱OS)是管理計算機硬件與軟件資源的程序,是計算機系統(tǒng)的內(nèi)核與基石;

操作系統(tǒng)本質(zhì)上是運行在計算機上的軟件程序 ;

為用戶提供一個與系統(tǒng)交互的操作界面 ;

操作系統(tǒng)分內(nèi)核與外殼(我們可以把外殼理解成圍繞著內(nèi)核的應(yīng)用程序,而內(nèi)核就是能操作硬件的程序)。

操作系統(tǒng)分內(nèi)核與外殼

1.2 操作系統(tǒng)簡單分類

Windows: 目前最流行的個人桌面操作系統(tǒng) ,不做多的介紹,大家都清楚。

Unix: 最早的多用戶、多任務(wù)操作系統(tǒng) .按照操作系統(tǒng)的分類,屬于分時操作系統(tǒng)。Unix 大多被用在服務(wù)器、工作站,現(xiàn)在也有用在個人計算機上。它在創(chuàng)建互聯(lián)網(wǎng)、計算機網(wǎng)絡(luò)或客戶端/服務(wù)器模型方面發(fā)揮著非常重要的作用。

Linux: Linux是一套免費使用和自由傳播的類Unix操作系統(tǒng).Linux存在著許多不同的Linux版本,但它們都使用了 Linux內(nèi)核 。Linux可安裝在各種計算機硬件設(shè)備中,比如手機、平板電腦、路由器、視頻游戲控制臺、臺式計算機、大型機和超級計算機。嚴格來講,Linux這個詞本身只表示Linux內(nèi)核,但實際上人們已經(jīng)習(xí)慣了用Linux來形容整個基于Linux內(nèi)核,并且使用GNU 工程各種工具和數(shù)據(jù)庫的操作系統(tǒng)。

二 初探Linux

2.1 Linux簡介

我們上面已經(jīng)介紹到了Linux,我們這里只強調(diào)三點。

類Unix系統(tǒng): Linux是一種自由、開放源碼的類似Unix的操作系統(tǒng)

Linux內(nèi)核: 嚴格來說,Linux這個詞本身只表示Linux內(nèi)核

Linux之父: 一個編程領(lǐng)域的傳奇式人物。他是Linux內(nèi)核的最早作者,隨后發(fā)起了這個開源項目,擔(dān)任Linux內(nèi)核的首要架構(gòu)師與項目協(xié)調(diào)者,是當今世界最著名的電腦程序員、黑客之一。他還發(fā)起了Git這個開源項目,并為主要的開發(fā)者。

2.2 Linux誕生簡介

-1991年,芬蘭的業(yè)余計算機愛好者Linus Torvalds編寫了一款類似Minix的系統(tǒng)(基于微內(nèi)核架構(gòu)的類Unix操作系統(tǒng))被ftp管理員命名為Linux 加入到自由軟件基金的GNU計劃中;

Linux以一只可愛的企鵝作為標志,象征著敢作敢為、熱愛生活。

2.3 Linux的分類

Linux根據(jù)原生程度,分為兩種:

內(nèi)核版本: Linux不是一個操作系統(tǒng),嚴格來講,Linux只是一個操作系統(tǒng)中的內(nèi)核。內(nèi)核是什么?內(nèi)核建立了計算機軟件與硬件之間通訊的平臺,內(nèi)核提供系統(tǒng)服務(wù),比如文件管理、虛擬內(nèi)存、設(shè)備I/O等;

發(fā)行版本: 一些組織或公司在內(nèi)核版基礎(chǔ)上進行二次開發(fā)而重新發(fā)行的版本。Linux發(fā)行版本有很多種(ubuntu和CentOS用的都很多,初學(xué)建議選擇CentOS),如下圖所示:

Linux發(fā)行版本

三 Linux文件系統(tǒng)概覽

3.1 Linux文件系統(tǒng)簡介

在Linux操作系統(tǒng)中,所有被操作系統(tǒng)管理的資源,例如網(wǎng)絡(luò)接口卡、磁盤驅(qū)動器、打印機、輸入輸出設(shè)備、普通文件或是目錄都被看作是一個文件。

也就是說在LINUX系統(tǒng)中有一個重要的概念:一切都是文件。其實這是UNIX哲學(xué)的一個體現(xiàn),而Linux是重寫UNIX而來,所以這個概念也就傳承了下來。在UNIX系統(tǒng)中,把一切資源都看作是文件,包括硬件設(shè)備。UNIX系統(tǒng)把每個硬件都看成是一個文件,通常稱為設(shè)備文件,這樣用戶就可以用讀寫文件的方式實現(xiàn)對硬件的訪問。

3.2 文件類型與目錄結(jié)構(gòu)

Linux支持5種文件類型 :


Linux的目錄結(jié)構(gòu)如下:

Linux文件系統(tǒng)的結(jié)構(gòu)層次鮮明,就像一棵倒立的樹,最頂層是其根目錄:

Linux的目錄結(jié)構(gòu)

常見目錄說明:

/bin: 存放二進制可執(zhí)行文件(ls,cat,mkdir等),常用命令一般都在這里;

/etc: 存放系統(tǒng)管理和配置文件;

/home: 存放所有用戶文件的根目錄,是用戶主目錄的基點,比如用戶user的主目錄就是/home/user,可以用~user表示;

/usr : 用于存放系統(tǒng)應(yīng)用程序;

/opt: 額外安裝的可選應(yīng)用程序包所放置的位置。一般情況下,我們可以把tomcat等都安裝到這里;

/proc: 虛擬文件系統(tǒng)目錄,是系統(tǒng)內(nèi)存的映射??芍苯釉L問這個目錄來獲取系統(tǒng)信息;

/root: 超級用戶(系統(tǒng)管理員)的主目錄(特權(quán)階級o);

/sbin: 存放二進制可執(zhí)行文件,只有root才能訪問。這里存放的是系統(tǒng)管理員使用的系統(tǒng)級別的管理命令和程序。如ifconfig等;

/dev: 用于存放設(shè)備文件;

/mnt: 系統(tǒng)管理員安裝臨時文件系統(tǒng)的安裝點,系統(tǒng)提供這個目錄是讓用戶臨時掛載其他的文件系統(tǒng);

/boot: 存放用于系統(tǒng)引導(dǎo)時使用的各種文件;

/lib : 存放著和系統(tǒng)運行相關(guān)的庫文件 ;

/tmp: 用于存放各種臨時文件,是公用的臨時文件存儲點;

/var: 用于存放運行時需要改變數(shù)據(jù)的文件,也是某些大文件的溢出區(qū),比方說各種服務(wù)的日志文件(系統(tǒng)啟動日志等。)等;

/lost+found: 這個目錄平時是空的,系統(tǒng)非正常關(guān)機而留下“無家可歸”的文件(windows下叫什么.chk)就在這里。

四 Linux基本命令

下面只是給出了一些比較常用的命令。推薦一個Linux命令快查網(wǎng)站,非常不錯,大家如果遺忘某些命令或者對某些命令不理解都可以在這里得到解決。

4.1 目錄切換命令

cd usr: 切換到該目錄下usr目錄

cd ..(或cd../): 切換到上一層目錄

cd /: 切換到系統(tǒng)根目錄

cd ~: 切換到用戶主目錄

cd -: 切換到上一個操作所在目錄

4.2 目錄的操作命令(增刪改查)

mkdir 目錄名稱: 增加目錄

ls或者ll(ll是ls -l的別名,ll命令可以看到該目錄下的所有目錄和文件的詳細信息):查看目錄信息

find 目錄 參數(shù): 尋找目錄(查)

示例:

列出當前目錄及子目錄下所有文件和文件夾: find .

在/home目錄下查找以.txt結(jié)尾的文件名:find /home -name "*.txt"

同上,但忽略大小寫: find /home -iname "*.txt"

當前目錄及子目錄下查找所有以.txt和.pdf結(jié)尾的文件:find . ( -name "*.txt" -o -name "*.pdf" )或find . -name "*.txt" -o -name "*.pdf"

mv 目錄名稱 新目錄名稱: 修改目錄的名稱(改)

注意:mv的語法不僅可以對目錄進行重命名而且也可以對各種文件,壓縮包等進行 重命名的操作。mv命令用來對文件或目錄重新命名,或者將文件從一個目錄移到另一個目錄中。后面會介紹到mv命令的另一個用法。

mv 目錄名稱 目錄的新位置: 移動目錄的位置---剪切(改)

注意:mv語法不僅可以對目錄進行剪切操作,對文件和壓縮包等都可執(zhí)行剪切操作。另外mv與cp的結(jié)果不同,mv好像文件“搬家”,文件個數(shù)并未增加。而cp對文件進行復(fù)制,文件個數(shù)增加了。

cp -r 目錄名稱 目錄拷貝的目標位置: 拷貝目錄(改),-r代表遞歸拷貝

注意:cp命令不僅可以拷貝目錄還可以拷貝文件,壓縮包等,拷貝文件和壓縮包時不 用寫-r遞歸

rm [-rf] 目錄: 刪除目錄(刪)

注意:rm不僅可以刪除目錄,也可以刪除其他文件或壓縮包,為了增強大家的記憶, 無論刪除任何目錄或文件,都直接使用rm -rf 目錄/文件/壓縮包

4.3 文件的操作命令(增刪改查)

touch 文件名稱: 文件的創(chuàng)建(增)

cat/more/less/tail 文件名稱 文件的查看(查)

cat: 查看顯示文件內(nèi)容

more: 可以顯示百分比,回車可以向下一行, 空格可以向下一頁,q可以退出查看

less: 可以使用鍵盤上的PgUp和PgDn向上 和向下翻頁,q結(jié)束查看

tail-10 : 查看文件的后10行,Ctrl+C結(jié)束

注意:命令 tail -f 文件 可以對某個文件進行動態(tài)監(jiān)控,例如tomcat的日志文件, 會隨著程序的運行,日志會變化,可以使用tail -f catalina-2016-11-11.log 監(jiān)控 文 件的變化

vim 文件: 修改文件的內(nèi)容(改)

vim編輯器是Linux中的強大組件,是vi編輯器的加強版,vim編輯器的命令和快捷方式有很多,但此處不一一闡述,大家也無需研究的很透徹,使用vim編輯修改文件的方式基本會使用就可以了。

在實際開發(fā)中,使用vim編輯器主要作用就是修改配置文件,下面是一般步驟:

vim 文件------>進入文件----->命令模式------>按i進入編輯模式----->編輯文件 ------->按Esc進入底行模式----->輸入:wq/q! (輸入wq代表寫入內(nèi)容并退出,即保存;輸入q!代表強制退出不保存。)

rm -rf 文件: 刪除文件(刪)

同目錄刪除:熟記 rm -rf 文件 即可

4.4 壓縮文件的操作命令

1)打包并壓縮文件:

Linux中的打包文件一般是以.tar結(jié)尾的,壓縮的命令一般是以.gz結(jié)尾的。

而一般情況下打包和壓縮是一起進行的,打包并壓縮后的文件的后綴名一般.tar.gz。

命令:tar -zcvf 打包壓縮后的文件名 要打包壓縮的文件

其中:

z:調(diào)用gzip壓縮命令進行壓縮

c:打包文件

v:顯示運行過程

f:指定文件名

比如:加入test目錄下有三個文件分別是 :aaa.txt bbb.txt ccc.txt,如果我們要打包test目錄并指定壓縮后的壓縮包名稱為test.tar.gz可以使用命令:tar -zcvf test.tar.gz aaa.txt bbb.txt ccc.txt或:tar -zcvf test.tar.gz /test/

2)解壓壓縮包:

命令:tar [-xvf] 壓縮文件

其中:x:代表解壓

示例:

1 將/test下的test.tar.gz解壓到當前目錄下可以使用命令:tar -xvf test.tar.gz

2 將/test下的test.tar.gz解壓到根目錄/usr下:tar -xvf xxx.tar.gz -C /usr(- C代表指定解壓的位置)

4.5 Linux的權(quán)限命令

操作系統(tǒng)中每個文件都擁有特定的權(quán)限、所屬用戶和所屬組。權(quán)限是操作系統(tǒng)用來限制資源訪問的機制,在Linux中權(quán)限一般分為讀(readable)、寫(writable)和執(zhí)行(excutable),分為三組。分別對應(yīng)文件的屬主(owner),屬組(group)和其他用戶(other),通過這樣的機制來限制哪些用戶、哪些組可以對特定的文件進行什么樣的操作。通過 ls -l 命令我們可以 查看某個目錄下的文件或目錄的權(quán)限

示例:在隨意某個目錄下ls -l


第一列的內(nèi)容的信息解釋如下:


下面將詳細講解文件的類型、Linux中權(quán)限以及文件有所有者、所在組、其它組具體是什么?

文件的類型:

d: 代表目錄

-: 代表文件

l: 代表軟鏈接(可以認為是window中的快捷方式)

Linux中權(quán)限分為以下幾種:

r:代表權(quán)限是可讀,r也可以用數(shù)字4表示

w:代表權(quán)限是可寫,w也可以用數(shù)字2表示

x:代表權(quán)限是可執(zhí)行,x也可以用數(shù)字1表示

文件和目錄權(quán)限的區(qū)別:

對文件和目錄而言,讀寫執(zhí)行表示不同的意義。

對于文件:


對于目錄:


需要注意的是超級用戶可以無視普通用戶的權(quán)限,即使文件目錄權(quán)限是000,依舊可以訪問。

在linux中的每個用戶必須屬于一個組,不能獨立于組外。在linux中每個文件有所有者、所在組、其它組的概念。

所有者

一般為文件的創(chuàng)建者,誰創(chuàng)建了該文件,就天然的成為該文件的所有者,用ls ‐ahl命令可以看到文件的所有者 也可以使用chown 用戶名 文件名來修改文件的所有者 。

文件所在組

當某個用戶創(chuàng)建了一個文件后,這個文件的所在組就是該用戶所在的組 用ls ‐ahl命令可以看到文件的所有組 也可以使用chgrp 組名 文件名來修改文件所在的組。

其它組

除開文件的所有者和所在組的用戶外,系統(tǒng)的其它用戶都是文件的其它組

我們再來看看如何修改文件/目錄的權(quán)限。

修改文件/目錄的權(quán)限的命令:chmod

示例:修改/test下的aaa.txt的權(quán)限為屬主有全部權(quán)限,屬主所在的組有讀寫權(quán)限,其他用戶只有讀的權(quán)限

chmod u=rwx,g=rw,o=r aaa.txt


上述示例還可以使用數(shù)字表示:

chmod 764 aaa.txt

補充一個比較常用的東西:

假如我們裝了一個zookeeper,我們每次開機到要求其自動啟動該怎么辦?

新建一個腳本zookeeper

為新建的腳本zookeeper添加可執(zhí)行權(quán)限,命令是:chmod +x zookeeper

把zookeeper這個腳本添加到開機啟動項里面,命令是:chkconfig --add zookeeper

如果想看看是否添加成功,命令是:chkconfig --list

4.6 Linux 用戶管理

Linux系統(tǒng)是一個多用戶多任務(wù)的分時操作系統(tǒng),任何一個要使用系統(tǒng)資源的用戶,都必須首先向系統(tǒng)管理員申請一個賬號,然后以這個賬號的身份進入系統(tǒng)。

用戶的賬號一方面可以幫助系統(tǒng)管理員對使用系統(tǒng)的用戶進行跟蹤,并控制他們對系統(tǒng)資源的訪問;另一方面也可以幫助用戶組織文件,并為用戶提供安全性保護。

Linux用戶管理相關(guān)命令:

useradd 選項 用戶名:添加用戶賬號

userdel 選項 用戶名:刪除用戶帳號

usermod 選項 用戶名:修改帳號

passwd 用戶名:更改或創(chuàng)建用戶的密碼

passwd -S 用戶名 :顯示用戶賬號密碼信息

passwd -d 用戶名: 清除用戶密碼

useradd命令用于Linux中創(chuàng)建的新的系統(tǒng)用戶。useradd可用來建立用戶帳號。帳號建好之后,再用passwd設(shè)定帳號的密碼.而可用userdel刪除帳號。使用useradd指令所建立的帳號,實際上是保存在/etc/passwd文本文件中。

passwd命令用于設(shè)置用戶的認證信息,包括用戶密碼、密碼過期時間等。系統(tǒng)管理者則能用它管理系統(tǒng)用戶的密碼。只有管理者可以指定用戶名稱,一般用戶只能變更自己的密碼。

4.7 Linux系統(tǒng)用戶組的管理

每個用戶都有一個用戶組,系統(tǒng)可以對一個用戶組中的所有用戶進行集中管理。不同Linux 系統(tǒng)對用戶組的規(guī)定有所不同,如Linux下的用戶屬于與它同名的用戶組,這個用戶組在創(chuàng)建用戶時同時創(chuàng)建。

用戶組的管理涉及用戶組的添加、刪除和修改。組的增加、刪除和修改實際上就是對/etc/group文件的更新。

Linux系統(tǒng)用戶組的管理相關(guān)命令:

groupadd 選項 用戶組 :增加一個新的用戶組

groupdel 用戶組:要刪除一個已有的用戶組

groupmod 選項 用戶組 : 修改用戶組的屬性

4.8 其他常用命令

pwd: 顯示當前所在位置

grep 要搜索的字符串 要搜索的文件 --color: 搜索命令,--color代表高亮顯示

ps -ef/ps aux: 這兩個命令都是查看當前系統(tǒng)正在運行進程,兩者的區(qū)別是展示格式不同。如果想要查看特定的進程可以使用這樣的格式:ps aux|grep redis (查看包括redis字符串的進程)

注意:如果直接用ps((Process Status))命令,會顯示所有進程的狀態(tài),通常結(jié)合grep命令查看某進程的狀態(tài)。

kill -9 進程的pid: 殺死進程(-9 表示強制終止。)

先用ps查找進程,然后用kill殺掉

網(wǎng)絡(luò)通信命令:

查看當前系統(tǒng)的網(wǎng)卡信息:ifconfig

查看與某臺機器的連接情況:ping

查看當前系統(tǒng)的端口使用:netstat -an

shutdown: shutdown -h now: 指定現(xiàn)在立即關(guān)機;shutdown +5 "System will shutdown after 5 minutes":指定5分鐘后關(guān)機,同時送出警告信息給登入用戶。

reboot: reboot: 重開機。reboot -w: 做個重開機的模擬(只有紀錄并不會真的重開機)。

當前題目:Linux基礎(chǔ)知識點大全
轉(zhuǎn)載注明:http://www.muchs.cn/news15/102415.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站網(wǎng)站營銷、定制開發(fā)、用戶體驗、網(wǎng)站導(dǎo)航、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)