https://blog.csdn.net/qq_40700822/article/details/106080389
Linux學習筆記(一)
Linux簡介
Linux是一款優秀的計算機操作系統
LINUX是在UNIX基礎上開發,具有UNIX全部功能。
1991年,芬蘭赫爾辛基大學的學生Linus Torvalds開發了Linux。
Linus Torvalds把它變成了“自由”軟件。
注意:“自由”不是“免費”, “自由”即開源。
開源與免費的區別:免費軟件通常以二進制文件形式發佈。用戶雖然可以免費使用,但無權對軟件進行任何修改。開源軟件是將軟件以源代碼形式發佈,並遵循GPL等開源協議,用戶不僅能使用,而且還可對軟件進行改進。
Linux特點
1.開放性
開放性是指系統遵循世界標準規範,特別是遵循開放系統互聯(OSI)國際標準。
2.多用戶
Linux操作系統允許多個用戶同時登錄到系統當中
3.多任務
計算機同時執行多個程序,而且各個程序的運行相互獨立
4.出色的穩定性能
統一當作文件來看
7.豐富的網絡功能
完善的內置網絡是Linux的一大特點
8.安全性
採取了許多安全措施,包括對讀、寫操作進行權限控制,帶保護的子系統,審計跟蹤和內核授權
9.可移植性
能夠在微型機到大型計算機的任何環境和平臺上運行
Linux基本操作
1、Linux的登錄
有2種方式可以進入Linux的文本界面
虛擬控制檯:用組合鍵Ctrl+Alt+F2、 Ctrl+Alt+F7切換
GUI下的仿真終端:(ALT+CTL+T)
2、shell程序命令
Linux的基本命令
- passwd命令
更改用戶密碼 - –help
–help選項放在命令之後,用來顯示命令的信息。 - man命令
顯示系統文檔中的man頁內容。 - nfo命令
是一個基於菜單的超文本系統,是有GNU項目開發並有Linux發佈的。 - who命令
用於查看當前登錄到系統的用戶信息 - uname命令
uname
命令顯示正在使用的Linux系統信息
r
:顯示操作系統的內核發行號(Release Number)
n
:顯示網絡上本機的節點名(Node Name)
v
:顯示操作系統的內核版本號(Version Number) - date命令
顯示或設置系統的時間
格式:date [+%adDhHjmMrSTwWy]
- cal命令
在屏幕上輸出日曆信息
格式:cal [month] [year]
- echo命令
用於回顯輸入內容
格式:echo strings
- clear命令
clear命令清除shell窗口中的內容
格式:clear
- su命令
用戶進入到系統後,切換到其他用戶,使用su命令。
退回到原來用戶使用exit命令
若想成功切換需要切換用戶賬號的密碼。
Linux文件系統的特點
1.Linux文件系統採用樹形結構,從根目錄root(/)開始。
2.Linux的虛擬文件系統允許衆多不同類型的文件系統共存,並支持跨文件系統的操作。
3.Linux的文件是無結構字符流式文件,不考慮文件內部的邏輯結構,只把文件簡單地看作是一系列字符的序列。
4.Linux的文件可由文件擁有者或超級用戶設置相應的訪問權限而受到保護。
5.Linux把所有的外部設備都看作文件,可以使用與文件系統相同的系統調用和函數來讀寫外部設備。
Linux文件系統的組成
/bin:存放二進制可執行命令目錄;
/home:用戶主目錄的基點目錄,默認情況每個用戶主目錄都設在該目錄下,如默認情況下用戶user01的主目錄是/home/user01;
/lib:存放標準程序設計庫目錄,又叫動態鏈接共享庫目錄,目錄中文件類似windows裏的.dll文件;
/etc:存放系統管理和配置文件目錄;
/dev:存放設備特殊文件目錄,如聲卡文件、磁盤文件等;
Linux文件系統類型
EXT文件系統
其它文件系統
文件系統操作
1. 建立文件系統。
當硬盤完成分區後,應該在該分區上建立文件系統,該操作又稱爲格式化。建立文件系統是通過mkfs工具來完成的。例如,如果需要在分區/dev/hdb1上建立ext4文件系統,可使用下列命令:
mkfs -t ext4 /dev/hdb1
按照Linux系統對分區的命名規則,ATA接口的硬盤以字母組合hd開始,SCSI和SATA接口硬盤以字母組合sd開始。第3個字母是硬盤的序號,a爲第1塊硬盤,b爲第2塊硬盤,依次類推。最後一位數字是分區的序號。
2. 掛載子文件系統。
創建文件系統後,需要使用命令mount將該文件系統安裝到主文件系統中。例如將第 1 .步中的hdb1分區掛載到“/mnt/dev”節點上,可使用下列命令:
su // 切換到根用戶權限
mkdir /mnt/dev // 創建目錄
chmod 777 /mnt/dev // 修改目錄權限
mount -t ext4 /dev/hdb1 /mnt/dev // 掛載子文件系統
在進行掛載前,首先要切換爲根用戶權限,否則無法訪問“/mnt”目錄。然後,爲掛載點建立一個空目錄,爲了讓所有用戶都能訪問和修改該目錄,還需要使用chmod命令修改目錄的權限。最後執行mount命令進行掛載,第1個參數是文件系統類型,第2個參數是分區的路徑,第3個參數是掛載點的路徑。
3.卸載子文件系統。
對於一些可讀寫的移動設備來說,移除設備前需要進行卸載子文件系統操作。因爲Linux系統使用了緩存機制,如果不卸載就移除設備可能會造成子文件系統數據丟失。例如某個已掛載的USB存儲器掛載點爲/mnt/usbdisk,卸載該文件系統的命令如下:
umount /mnt/usbdisk
***注意:對於正在進行讀寫操作的子文件系統不能使用umount命令卸載。卸載子文件系統前,應保證其中沒有文件被打開。
Linux文件系統操作命令
1.顯示文件命令
1)cat命令
格式:cat [選項] …[文件]…
說明:把多個文件連接後輸出到標準輸出(屏幕)或加“> 文件名”輸出到另一個文件中。
常用選項:
-b
或--number-noblank
:從1開始對所有非空輸出行進行編號。
-n
或--number
:從1開始對所有輸出行編號。
-s
或--squeeze-blank
:將連續兩行以上的空白行合併成一
2.more命令
格式:more [選項] [文件…]
說明:該命令顯示文本文件的內容,一次顯示一屏,滿屏後停下來,可按如下鍵繼續。
(1)Space
鍵 :默認顯示文本的下一屏內容。
(2)Enter
鍵:默認顯示文本的下一行內容。
(3)d
鍵或CTRL+D
:向下顯示文本半屏,默認爲11行。
(4)b
鍵或CTRL+B
:默認顯示文本的上一屏內容。
(5)q
or Q
or INTERRUPT
鍵:退出more命令。
常用選項:
-num
:指定一個整數,表示一屏顯示多少行。
-d
:在每屏底部顯示提示信息,包括當前顯示的百分比,按鍵提示等。
-c
或 –p
:不滾屏,在顯示下一屏之前先清屏。
+num
:從行號num開始顯示。
+/pattern
:定義一字符串,在文件中查找該字符串,從該字符串後開始顯示。
3.less命令
格式:less [選項] [文件]…
說明:與more命令相似,分屏顯示文件的內容。less命令允許用戶向前(PageUp)或向後(PageDown)瀏覽文件。在less命令提示符下按q鍵退出。
常用選項:
-i
或--ignore-case
:搜索時忽略大小寫,除非搜索串中包含大寫字母。
-I
或--IGNORE-CASE
:搜索時忽略大小寫。
-m
或--long-prompt
:顯示讀取文件的百分比。
-M
或--LONG-PROMPT
:顯法讀取文件的百分比、行號及總行數。
-N
或--LINE-NUMBERS
:在每行前輸出行號。
-p pattern
或--pattern=pattern
:定義一字符串,在文件中查找該字符串,從該字符串後開始顯示。
4.head命令
格式:head [選項] …[文件]…
說明:head 命令用於查看一個文本文件的開頭部分,行數由參數值決定,默認值是10。
常用選項:
-c
或--bytes=num
:顯示文件前面num個字節。
-n
或--lines=num
:顯示文件前面num行,不指定此參數顯示前10行。
5.tail命令
格式:tail [選項] … [文件] …
說明:tail命令用於查看一文本文件的末尾若干行,行數由參數值決定,默認值是10。如果給定的文件不止一個,則在顯示的每個文件前面加一個文件名標題。
常用選項:
-c
或--bytes=num
:顯示文件最後面num個字節。
-n
或--lines=num
:顯示文件最後面的num行,不指定此參數顯示10行。
6.複製、刪除和移動文件的命令
cp命令
格式:cp [選項] 源文件或目錄 目標文件或目錄
說明:cp命令完成文件的複製。
如果源是普通文件,該命令把源文件複製成指定的目標文件或複製到指定的目標目錄中。
如果源是目錄,目標是一已存在的目錄,該命令把源目錄下的所有文件和子目錄都複製到目標目錄中;
如果源是目錄,目標不是一已存在的目錄,命令出現錯誤信息。
常用選項:
-a
或--archive
:等同於 –dpR。
-d
:複製符號鏈接時,把目標文件或目錄也建立爲符號鏈接,並指向與源文件或目錄鏈接的原始文件或目錄。
-f
或--force
:強行復制文件或目錄
-i
或--interactive
:覆蓋目標文件前需要確認。
-n
或--no-clobber
:不覆蓋已存在的目標文件。
-p
:複製源文件或目錄內容的同時也複製文件屬性
-R
,-r
或--recursive
:遞歸複製目錄,將源目錄下所有文件及子目錄都複製到目標位置。
rm 命令
格式:rm [選項] …文件或目錄…
說明:rm命令可以刪除文件或目錄,刪除目錄必須要加“-r”選項。
常用選項:
-f
或--force
:強制刪除文件或目錄。
-i
或--interactive
:刪除文件或目錄前提示要用戶確認。
-r
,-R
, 或--recursive
:遞歸刪除指定目錄及其下屬各級子目錄和相應的文件。
mv命令
格式:mv [選項] 源文件或目錄 目標文件或目錄
說明:mv命令可移動文件或目錄;更改文件或目錄的名稱。
常用選項:
-i
或--interactive
:覆蓋文件前需要確認。
-f
或--force
:若目標文件或目錄已存在,直接覆蓋。
-n
或--no-clobber
:不覆蓋已存在的文件。
-u
或--update
:移動或更改文件名時,若目標文件已存在,且文件日期比源文件新,則不覆蓋目標文件。
7.文件內容統計命令
格式:wc [選項] …[文件]…
說明:wc命令統計給定文件中的字節數、字數、行數。
常用選項:
-c
或--bytes
:統計字節數。
-m
或--chars
:統計字符數。
-l
或--lines
:統計行數。
-w
或--words
:統計字數。
8.文件的壓縮和備份
bzip2命令
格式:bzip2 [選項] [要壓縮的文件]
說明:bzip2壓縮生成.bz2文件的壓縮程序,並刪除原始的文件。
常用選項:
-c
或--stdout
:將壓縮或解壓縮的結果送到標準輸出。
-d
或--decompress
:執行解壓縮。
-f
或--force
:壓縮或解壓縮時,若輸出文件與現有文件同名,覆蓋現有文件。
-k
或--keep
:bzip2 在壓縮或解壓縮後,保留原始文件。
gzip命令
格式:gzip [選項] [文件 …]
說明:gzip壓縮會產生".gz"的壓縮文件,並刪除原始文件。
常用選項:
-c
或--stdout
或--to-stdout
:壓縮後文件輸出到標準輸出設備,不改變原始文件。
-d
或--decompress
或--uncompress
:解開壓縮文件。
-f
或--force
:強行壓縮文件。
-n
或--no-name
:壓縮文件時,不保存原來的文件名稱及時間戳記。
-N
或--name
:壓縮文件時,保存原來的文件名稱及時間戳記。
-r
或--recursive
:遞歸處理,將指定目錄下的所有文件及子目錄一併處理。
tar(tape archive)命令
格式:tar [選項…] [文件或目錄]…
說明:tar 是用來建立,還原備份文件的工具程序,它可以加入,解開備份文件內的文件。
常用選項:
-A
或--catenate
:新增tar文件到已存在的備份文件。
-c
或--create
:建立新的備份文件。
-f<備份文件>
或--file=<備份文件>
:指定備份文件。
-t
或--list
:列出備份文件的內容。
-v
或--verbose
:顯示指令執行過程。
-x
或--extract
或--get
:從備份文件中還原文件。
--delete
:從備份文件中刪除指定的文件。
Linux目錄操作命令
1.切換工作目錄和顯示目錄內容的命令
cd命令
格式:cd [目的目錄]
說明:切換目錄至目的目錄,前提是用戶必須擁有進入目的目錄的權限。 其中目的目錄可爲絕對路徑或相對路徑,若目錄名稱省略,則切換至使用者的主目錄。
pwd命令
格式:pwd
說明:pwd命令不帶任何選項或參數,Linux系統用 pwd 命令來查看“當前工作目錄”的完整路徑。
ls命令
格式:ls [選項]… [文件或目錄]…
說明:ls命令可列出目錄的內容,包括文件和子目錄的名稱。
常用選項:
-a
或--all
:列出目錄下的所有文件和目錄,包括以 “.” 開頭的隱含文件。
-A
或--almost-all
:列出除“.”(當前目錄)及”…”(當前目錄的上級目錄)外的任何文件和目錄。
-b
或--escape
:把文件名中不可輸出的字符用反斜槓加字符編號的形式列出。
-c
:輸出文件的ctime(文件最後更改的時間),並根據ctime 排序。
-C
:分成多列顯示文件和目錄。
-F
或--classify
:加上文件類型的指示符號,其中“*”表示可執行的普通文件;“/”表示目錄;“@”表示符號鏈接;“|”表示管道文件;“=”表示套接字。
-d
或 --directory
:將目錄像文件一樣顯示,而不是顯示其下的文件。
-l
:列出文件詳細信息,輸出信息分成7個字段列表
第1字段:文件類型及訪問權限字段。
文件屬性字段總共有10個字母組成,第一個字母表示文件類型,具體如下。
-
表示該文件是一個普通文件。
d
表示該文件是一個目錄。
c
表示該文件是字符設備文件。
b
表示該文件是塊設備文件。
p
表示該文件是管道文件。
l
表示該文件是符號鏈接文件。
s
表示該文件是套接字。
後面的9個字符表示文件的訪問權限,我們在存取權限部分詳細介紹。
第2字段:文件鏈接數字段。
表示文件硬鏈接數或目錄子目錄數。
第3字段:文件屬主字段。
表示文件的所有者。
第4字段:文件所屬用戶組字段。
表示該文件所屬的用戶組。
第5字段:文件大小字段。
表示該文件的大小,以字節爲單位。
第6字段:最後修改時間字段。
表示該文件最後修改時間。
第7字段:文件名字段。
表示該文件的文件名,如果是符號鏈接,->
箭頭符號後面跟一個它指向的文件。
2.創建和刪除目錄命令
mkdir命令
格式:mkdir [選項] … 目錄名…
說明:該命令創建由目錄名命名的目錄,同時設置該目錄的權限。要求創建目錄的用戶在當前目錄中具有寫權限,並且目錄名不能是當前目錄中已有的目錄或文件名稱。
常用選項:
-m
或--mode=MODE
:對新建目錄設置存取權限。
-p
或--parents
:若所建目錄的上層目錄不存在,會一併建立。
rmdir命令
格式:rmdir [選項]… 目錄名…
說明:該命令從一個目錄中刪除一個或多個目錄。刪除目錄時,必須對該目錄的父目錄具有寫權限,目錄被刪除前應該是空目錄。
常用選項:
-p
或--parents
:刪除指定目錄後,若該目錄的上層目錄已變成空目錄,則其一併刪除。
Linux改變文件或目錄存取權限命令
用戶和用戶組
Linux系統是一個多用戶多任務的分時操作系統,任何一個要使用系統資源的用戶,都必須首先向系統管理員申請一個賬號,然後以這個賬號的身份進入系統。 Linux內部用UID標識各用戶。
用戶組(group)就是具有相同特徵的用戶的集合體,Linux系統中每個用戶都屬於一個用戶組,系統能對一個用戶組中的所有用戶進行集中管理。在Linux內部用戶組用GID標識。
Linux系統規定了4種不同類型的用戶,分別是文件主、同組用戶、其他用戶、超級用戶。
存取權限
存取權限就是用來確定誰可以通過何種方式對文件和目錄進行訪問,Linux系統規定3種訪問文件和目錄的方式。
(1)讀(r)
對文件表示只允許指定用戶讀取該文件的內容,禁止做任何更改操作;對目錄表示可以列出存儲在該目錄下的文件。
(2)寫(w)
對文件表示允許指定用戶打開並修改該文件;對目錄表示允許從該目錄中刪除或添加新的文件。
(3)執行(x)
對文件表示允許指定用戶執行該文件;對目錄表示允許在該目錄中進行查找,能用cd命令將工作目錄改爲該目錄。
用ls -l命令可以顯示文件或目錄的詳細信息,其中第一字段即爲文件屬性字段
chmod命令
用字母設定法改變文件或目錄的訪問權限。
格式:chmod [who] [opt] [mode] 文件或目錄名…
說明:用於改變文件或目錄的訪問權限,是Linux系統管理員最常用到的命令之一。其中who
表示對象,是以下字母中的一個或多個的組合。
u
:表示文件所有者。
g
:表示同組用戶。
o
:表示其它用戶。
a
:表示所有用戶。
opt
表示操作,可以爲如下符號。
+
:添加某個權限。
-
:取消某個權限。
=
:賦予給定的權限,並取消原有的權限。
mode
表示權限,是以下字母一個或多個的組合。
r
:可讀。
w
:可寫。
x
:可執行。
用數字設定法改變文件或目錄的訪問權限。
格式:chmod [mode] 文件或目錄名…
說明:將rwx看成二進制數,如果該位有權限,用1表示,該位沒有權限用0表示,那麼rwx r-x r- -可以表示爲:111 101 100,再將其每三位轉換成爲一位八進制數,就是754。
Linux改變用戶組和文件主的命令
chgrp命令
格式:chgrp [選項]… 所屬組 文件或目錄…
說明:chgrp命令改變指定文件所屬的用戶組,其中所屬組可以是用戶組的ID,也可以是用戶組的組名。文件是以空格分開的要改變屬組的文件列表,支持通配符。在Linux下一般只有超級用戶才能改變該文件的屬組。
常用選項:
-R
或--recursive
:遞歸式地改變指定目錄及其下的所有子目錄和文件的屬組。
chown命令
格式:chown [選項] … [用戶][:[組]] 文件 …
說明:chown命令將指定文件的擁有者改爲指定的用戶或組。用戶可以是用戶名或用戶ID。組可以是組名或組ID。文件是以空格分開的要改變權限的文件列表,支持通配符。在linux下一般只有超級用戶纔可以使用該命令。
常用選項:
-R
或--recursive
:遞歸式改變指定目錄及其下的所有子目錄和文件的擁有者。
本文中沒有提到的命令都可以用--help
命令來進行查詢。
END
2020.5.12 by iNBC form SDUT