【Linux系統】基礎知識點總結!(概念,命令,vim,shell...)

1、UNIX和Linux發展史

UNIX是爸爸
在這裏插入圖片描述

Linux兒子(由unix發展而來)
在這裏插入圖片描述

tcp/ip協議也是應運而生的!

linux是天生的網絡操作系統

2、Linux的版本

內核版本:https://www.kernel.org/ 定期更新

  • 內核版本下載來,自己加工以後就成了發行版本

發行版本:redhat,centos,ubuntu,紅旗Linux…等等

  • 這些發行版本的內核都是一樣的

3、開源的軟件簡介

Apache是一個基金會,裏面有很多開源的項目

在這裏插入圖片描述

開源不代表免費(僅僅是開放源代碼),但開源軟件絕大多數都是免費的,可自由傳播,改良,甚至銷售

開源帶來的好處:產品越來越優秀,越來越安全(因爲,有更多的人蔘與進來。)

4、Linux的應用領域

1、各種網站的後臺操作系統:

比如:https://searchdns.netcraft.com
這個網站可以查看,某個網站使用的系統
在這裏插入圖片描述
2、嵌入式應用

智能家電,航空系統,智能卡,手機,相機…等等

5、Linux注意事項

  • Linux的命令嚴格區分大小寫(Linux中的所有字母都是區分大小寫的)
  • Linux的所有東西都是文件;包括硬件
    • 硬盤文件:/dev/sd[a-p]
    • 光盤文件:/dev/sr0等
  • Linux文件都是“沒有”後綴名的,是靠 文件權限來區分的
    • 但是有一些壓縮包文件(tgz,tar,bz2,gz…),腳本文件(sh),配置文件(conf),網頁文件(html,css,php,java),這些所謂的擴展名,都僅僅是爲了方便管理員來管理文件,沒有擴展名照樣使用。
  • Linux的所有存儲設備都得掛載(分配盤符)以後用戶才能使用,比如,硬盤,光盤,U盤
  • windows下的程序不能直接在Linux中安裝運行的

6、Linux服務器端的維護

各個目錄的功能(大部分都是一種規範約定)

目錄名 目錄作用
/bin 存放系統命令的目錄,普通用戶和超級用戶都可以執行,不過放在/bin下的命令在單用戶模式下也可以執行
/sibn 保存和系統環境設置相關的命令,只有超級用戶可以使用這些命令鏡像系統環境的設置,但有些命令可以允許普通用戶查看
/uer/bin/ 存放系統命令的目錄,普通用戶和超級用戶都可以執行,這些命令和系統啓動無關,在單用戶模式下不能執行
/usr/sbin/ 存放根文件系統不必要的系統管理命令,例如多數服務程序,只有超級用戶可以使用,其實,在Linux中,在sbin目錄中的命令只有超級用戶能用,bin下的所有用戶都可以用
/boot/ 系統啓動目錄,保存系統啓動相關的文件,如內核文件和啓動引導程序文件(grub)等
/dev/ 設備文件保存位置,一些硬件文件,硬盤等等
/etc/ 配置文件保存位置。系統內所有采用默認安裝方式(rpm安裝)的服務的配置文件全部在這個目錄保存,如:用戶賬號密碼,服務啓動腳本,一些服務的配置文件
/home/ 普通用戶的家目錄,每個用戶都要有一個默認登錄位置,這個位置就是該用戶的家目錄,所有普通用戶的家目錄就是在/home下建立一個和用戶名相同的目錄,如:用戶user的家目錄:/home/user
/lib/ 系統調用的函數庫保存位置
/lost+found/ 當系統意外崩潰或者機器意外關機,而產生的一些文件碎片放在這裏,當系統啓動的過程中fsck工具會檢查這裏,並修復已經損壞的文件系統,這個目錄只在每個分區中出現,例如 /lost+found/就是根分區的備份恢復目錄,/boot/lost+found/ 就是/boot分區的備份恢復目錄
/media/ 掛載目錄,系統建議是用來掛載媒體設備的,例如軟盤和光盤
/mnt/ 掛載目錄,早起Linux中只有這一個掛載目錄,並沒有細分,現在這個目錄系統建議掛載額外設備,例如,u盤,移動硬盤和其他系統的分區
/misc/ 掛載目錄,系統建議用來掛載NFS服務的共享目錄
/opt/ 第三方安裝的軟件保存位置,這個目錄就是防止和安裝其他軟件的位置,比如 jdk,tomcat…,但也不強迫,有的人喜歡放到usr下也是可以的
proc 虛擬文件系統,該目錄中的數據並不保存到硬盤中,而是保存在內存中,主要保存系統的內核,進程,外部設備狀態和網絡裝填燈
/sys/ 虛擬文件系統,和/proc目錄相似,保存在內存中,保存內核相關信息
/root/ 超級用戶的家目錄,即 /
/srv/ 服務數據目錄,一些系統服務啓動之後,可以在這個目錄中保存所需要的的數據
/tmp/ 臨時目錄,系統存放臨時文件的目錄,該目錄下所有用戶都可以訪問和寫入,我們建議此目錄中不能重要數據,每次開機最好清空此目錄
/usr/ 系統軟件資源目錄,注意usr不是user的縮寫,而是“Unix Software Resource”的縮寫,所以不是存放用戶數據,而是存放系統軟件資源的目錄,系統中安裝的軟件大多保存這裏
/var/ 動態數據保存位置,主要保存緩存和日誌以及軟件運行所產生的的文件

proc和sys是存放在內存中的兩個目錄,重啓會消失。不要往裏面寫東西,東西一來不會保存,而且當你寫滿以後就會系統就會出錯

usr,系統軟件資源目錄(system,software,resource)類似於windows的windows目錄

注意事項:

1、遠程服務器不允許關機,只能重啓

2、重啓服務應該關閉運行着的服務!!

3、不要在服務器訪問高峯運行高負載命令:高負載命令:進行大數據的操作,壓縮,掃描複製等等

4、遠程配置防火牆的時候記得對自己開放,防火牆甄別是通過:ip地址,端口號,net地址,包數據

5、數據和日誌的定時備份,權限的合理分配(最小分配,夠用就行),密碼的強壯性和定時更新,系統啓動的服務越少越好

7、Linux命令

命令的基本格式:

命令 -選項 參數 比如:ls -la /etc

簡化選項和完整選項:-a --a,單槓和雙槓

個別命令可能不遵循此格式

文件處理

每一個文件都有一個i節點號,每個進程都有一個進程號,每個用戶都有一個標識號碼

`ls`						ls ->(類比於) list ,查看當前目錄的所有文件 
`ls -a` 					所有文件 -> list -all,包括隱藏文件
`ls -l`						l -> long 文件的完整信息
`ls -ld` 					查看某個目錄的詳細信息,比如 ls -ld /etc
`ls -h`						人性化的顯示數據,比如文件大小,不加h顯示的是字節數
`ls -i`						查看文件的inode號(inode存儲文件的詳細信息),即i節點

完整信息7個部分,分別是:文件類型和權限,文件基數,文件所屬者,文件所屬組,文件大小,文件最後更新時間,文件名
在這裏插入圖片描述

`mkdir`		創建目錄
`mkdir -p`	遞歸創建目錄,即同時創建多個目錄
`cd` 		切換目錄
`pwd` 		顯示當前目錄
`.` 		當前目錄
`..` 		上級目錄
`rmdir` 	[目錄名] 刪除空目錄
`cp 文件目錄或文件`	 (-p保留的文件屬性,比如時間等等)
`touch [文件名]` 	  創建文件,文件名可以含有空格(加雙引號),但儘量不要這樣做。

在這裏插入圖片描述

`cat [文件]` 		查看文件內容
`cat -n [文件]` 	顯示行號
`tac [文件]` 		倒敘查看

`more [文件]` 		來查看很多內容的文件這時進入查看文件的狀態,
					空格或者f來翻頁,回車一行行的瀏覽找到以後,使用q退出瀏覽狀態

`less [文件]` 		less不僅含有more的所有功能,而且可以使用↑來向上翻行,
					pageUp向上翻頁,在瀏覽狀態下輸入 /log  ,
					這樣他就會在這個文件中搜索log,並且高亮顯示。(即可搜索關鍵字)

`head -n [文件]` 		查看文件的前n行內容(n爲數字)

`tail -n [文件]` 		查看文件的末尾n行內容(n爲數字)

`tail -f [文件]` 		動態顯示文件最後一行的內容,常用來查看日誌動態的變化

`ln -s [軟鏈接名]` 	    ln -s /tmp/sjt 在tmp目錄下創建sjt軟鏈接(軟鏈接即快捷方式),
						軟鏈接的權限都是rwx rwx rwx,不加 -s 生成的是硬鏈接,
						硬鏈接不可以跨分區,不允許生成指向目錄的快捷方式

權限管理

只有所有者和管理員才能更改權限

在這裏插入圖片描述

{ugoa}
u:所屬者,g:所屬組,o:其他人,a:所有人

{±=}
+:增加權限,-:減少權限,=:重新授予權限(不管原來是什麼,現在就是我授予的權限)

{rwx}
r:可讀權限(4) ,w:可寫權限(2) ,x:可執行權限(1)

最前面的一個字符含義:

  • l是鏈接(link)
  • d是目錄(directories)
  • c是字符設備文件(char)
  • b是塊設備(block)
  • -是文件
    在這裏插入圖片描述

可以同時對幾個用戶來分配權限,用逗號隔開即可

在這裏插入圖片描述

只有管理員才能改變文件或者目錄的所有者

`chown [用戶] [文件或者目錄]`		 更改所屬者
`chgrp [用戶組] [文件或者目錄]`		     更改所屬組

文件搜索

find [搜索範圍] [匹配條件]

`find / -name init`		在根目錄下按照文件名來搜索名叫init的文件
`find / -iname init`  	-iname,不區分大小寫查詢,* 可以模糊匹配,?可以匹配單個字母	   

在/etc目錄下搜索
在這裏插入圖片描述

#按文件大小來查找
`find / -size +204800`		在根目錄下查找文件大於100M的文件
`find / -size -204800`		在根目錄下查找文件小於100M的文件

在linux中,文件的大小要換算成“數據塊”

一個數據塊	512字節	0.5k
即 1k=2個數據塊
100M=102400K=204800個數據塊

在這裏插入圖片描述

`find / -user [username]`		根據所有者查找
`find / -group [groupname]`		根據所屬組查找

超過5分鐘的可以用+
在這裏插入圖片描述
多條件查詢:
在這裏插入圖片描述
根據文件類型查找:
在這裏插入圖片描述
find找到的結果,可以再追加命令-exec或者-ok,在追加你想要的命令,這樣就可以把你find出來的東西,執行你的命令,-exec是立刻執行,-ok是一一確認。

在這裏插入圖片描述

`locate [文件名]` 	查找系統文件,但要注意一些臨時目錄是查不着的,要定期維護更新數據,

`updatedb`			更新數據表

`which [命令]`		查看命令所在的目錄

幫助命令

maninfo 是大同小異的

`man ls`	使用命令man查看 ls 命令的解釋
`whatis [命令]`
`whereis [命令]`
`apropos [配置文件]`		查看配置文件的幫助信息,(不寫配置文件的絕對路徑)

進入以後有些ls的信息,按q退出
在這裏插入圖片描述
Linux中數字1代表命令的幫助,5代表配置文件的幫助,兩者都有的話優先顯示命令的幫助,你也可以man 5 passwd

`[命令] --help`		查看該命令的一些選項
`help umask`		查看一些內置命令的幫助

什麼是內置命令,你使用whichwhatis的時候,顯示不出來幫助的一些信息
在這裏插入圖片描述

用戶管理

`useradd [用戶名]`	這一步其實只是創建了一些文件,想要登錄系統,還需要設置密碼
`passwd [用戶名]` 	這裏就設置了密碼,即用戶可登錄你的系統。

`who`		查看登錄的用戶

用戶,登錄終端(tty表示本機,pts表示虛擬終端),時間(系統ip地址)
在這裏插入圖片描述
w命令
在這裏插入圖片描述
在這裏插入圖片描述

壓縮解壓

Linux中的壓縮格式,.gz
.zip文件格式,Linux和windows中都可以識別

`gzip [文件名]`		壓縮該文件,注意,gzip只能壓縮文件,不能壓縮目錄
`gunzip [壓縮的文件]`		解壓該文件 
`gzip -d [壓縮的文件]`		解壓該文件
`tar [參數] [目錄]`			打包(壓縮)目錄,比如 `tar -zcf [目錄]`
`tar -xf [目錄]`			解包(解壓縮)目錄,和上面的壓縮,只有 `-c``-x`(解包)的區別

tar命令的可選參數在這裏插入圖片描述
在這裏插入圖片描述

`zip sjt.zip sjt`		壓縮文件sjt
`zip -r sjtD.zip sjtD`	壓縮目錄sjtD
`unzip [文件或者目錄]`   解壓縮

bzip2的壓縮度很高,一般用來壓縮大文件,bunzip2解壓縮
在這裏插入圖片描述
總結如下:
在這裏插入圖片描述

網絡命令

`w`		查看當前在線用戶 ,who也可以
`write [用戶名]`		給該在線用戶發送一條消息,寫錯了,`ctrl+backspace`來刪除,直接刪除,刪除不掉。寫完以後`Ctrl+D`來保存發送。

`wall [內容]`	廣播一些東西,所有在線用戶都可以收到

`ping [ip地址]`		查看地址是否通暢
`ping -c 4 [ip地址]`	ping4次目標地址
`ifconf`		查看當前計算機的網卡信息

在這裏插入圖片描述

`mail [用戶名]`		發送郵件給用戶,在線與否都可以
`mail`			接收查看當前的郵件,然後直接輸入郵件的序列號,就可以查看該郵件,h查看郵件列表,`d [序列號]` 刪除郵件,`q` 退出

`last`		查看所有用戶的登錄情況,包括多次登錄的用戶,只要來過就會記錄
`lastlog`	查看所有用戶的最後一次登錄情況
`lastlog -u [用戶的id]` 		查看指定用戶最後一次登錄的信息
`traceroute [ip地址或者域名]`	顯示數據包到主機間的路徑
`netstat -anop`			查看監聽的地址及其端口和狀態

netstat命令的選項和常用示例
在這裏插入圖片描述
mount命令來掛載光盤
在這裏插入圖片描述

關機重啓

關機之前需要注意,停止機器上的服務

`shutdown [選項] [時間]`			選項 -c,-r,-h
`shutdown -r now`				立即重啓
`shutdown -r 20:30`				晚上八點半重啓
`shutdown -h now`				立即關機
`shutdown -h 20:30`				晚上八點半關機
`shutdown -c`					取消上一個關機命令

`logout`						退出登錄

還有一些其他的關機重啓操作,但是shutdown更加安全

8、vim

vim是功能強大的全屏幕文本編輯器,它的作用是建立,編輯,顯示查看文本文件

vim沒有菜單,只有命令
在這裏插入圖片描述
定位命令和刪除命令是在編輯模式進行的
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
命令模式下
在這裏插入圖片描述

常見命令總結:
在這裏插入圖片描述
vim的使用技巧

編輯模式下:

:r [文件的絕對路徑]			可以將該文件的內容導入到光標處
:r ![命令]					可以將命令的執行結果寫入到本文件的光標處


k							向上(↑)移動光標
j							向下(↓)移動光標
h							向左(←)移動光標
l							向右(→)移動光標		

9、軟件包管理

簡介

軟件包分類:

  • 源碼包(腳本安裝包)
    • 優點:開源,可自由選擇所需的功能;軟件是編譯安裝,所以更適合自己的系統,更加穩定效率也更高;卸載方便(直接刪除安裝目錄即可)
    • 缺點:安裝步驟較多,尤其安裝大型軟件時,它還依賴了其他的環境;編譯時間過長;編譯安裝出錯,對新手很不友好
  • 二進制包(rpm包,系統默認包),二進制包是目前使用最多的,二進制包是經過編譯的。即機器可以識別的代碼包(即010101…),這樣做的優點是安裝快,缺點是無法看到源代碼,功能選擇不靈活,依賴性強

RPM包管理 -rpm命令管理

在這裏插入圖片描述
名字中,硬件or軟件平臺缺失的話,說明適合任意平臺

在這裏插入圖片描述
安裝命令:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
總之用rpm處理的時候,依賴會很頭疼。。。

RPM包管理 -yum在線管理

使用yum命令來管理rpm包,自動下載依賴的rpm包
在這裏插入圖片描述
這樣就會自動下載依賴並且自動確認安裝該包

yum -y undate [包名] 			升級對應的包名
yum -y update					更新所有的軟件包,包括Linux的內核,這樣可能會導致系統宕機

yum -y remove [包名]			卸載對應的包名,卸載包的時候,要注意,卸載這個包時,這個包的依賴也都會卸載,其他包(甚至系統)										
								也可能依賴已經卸載的這個包的依賴包,這樣就會導致其他軟件不可用或者系統崩潰,
								所以用這個命令一定要小心,最好不要使用...

源碼包管理

在這裏插入圖片描述
源碼包的安裝位置一般是:/usr/local/軟件名/

service

腳本安裝包與軟件包選擇

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章