文件/目錄的權限
- Linux的文件/目錄權限有三種:可讀(Readable)、可寫(Writable)、可執行(Executable)。
- Linux的權限對象有三個:文件/目錄的所屬用戶(owner)、文件/目錄的所屬組別(group)、其他(other),root具有最高權限,不計入之內。
一、查看文件/目錄的詳細信息(包括權限)
查看某個文件或目錄的權限可通過ls
命令來實現,如下:
// 查看文件initial-setup-ks-test.cfg的權限信息
ls -l initial-setup-ks-test.cfg
執行結果和各字段的含義如下
如上圖所示,第一列第一個字符表示文檔的類型,類型不同,字符不同:
- “-”:表示類型爲文件
- “d”:表示類型爲目錄
- “l”:表示爲鏈接文件(link file)
- “b”:表示可供儲存的接口設備
- “c”:表示串行端口設備,如鍵盤、鼠標
第一列之後的9個字符代表該文件的權限,文件、目錄的權限主要由r
、w
、x
、-
4個字符構成,其中r
表示可讀,w
表示可寫,x
表示可執行,若不具有r
、w
、x
的任何一種權限,則用-
代替。
rwx
:權限爲可讀、可寫、可執行rw-
:權限爲可讀、可寫、不可執行r--
:權限爲可讀、不可寫、不可執行
二、文件權限與目錄權限的意義
文件權限
文件的權限主要是針對文件的內容。
r
(可讀):可讀取文件的內容w
(可寫):可編輯文件的內容(但不包括刪除該文件)x
(可執行):文件內容可以被系統執行
目錄權限
目錄的權限主要是針對該目錄下的文件或目錄。
r
(可讀):可以讀取目錄結構列表,具有可讀權限,能夠利用ls
命令讀取顯示該目錄下的文件和目錄w
(可寫):可以修改目錄結構列表,具體表現有以下幾種
1、 新建文件與目錄
2、刪除文件與目錄(不論該文件/目錄的權限爲何)
3、重命名文件與目錄
4、移動文件與目錄的位置x
(可執行):表示具有該權限的用戶可以進入該目錄,使該目錄成爲工作目錄,即可通過cd
命令進入該目錄下
三、設置文件/目錄的權限
文件/目錄的權限設置可通過指令chmod
來實現,有數字形式和符號形式兩種。
數字形式設置權限
權限的狀態可通過二進制對應,可讀、可寫、可執行對應二進制下的1,反之則對應爲0。根據rwx
的順序,可讀、可寫、可執行分別具有自己的位權。
權限 | 對應位權 |
---|---|
可讀 | 4 |
可寫 | 2 |
可執行 | 1 |
所具有的權限對應位權相加,得到權限的數字形式。如下:
權限 | 對應二進制 | 對應數字 |
---|---|---|
rwx | 111 | 7 |
rw- | 110 | 6 |
–w | 001 | 1 |
r-w | 101 | 5 |
通過以上規則,可用數字形式對文件/目錄的權限進行設置。
## 設置文件 a.txt 的權限 ##
# 權限爲rwxrw----
chmod 760 a.txt
# 權限爲rwxrwxr--
chmod 774 a.txt
符號形式更改權限
符號形式下設置權限,有4種設置對象:
u
:user,用戶g
:group,組別o
:other,其他a
:all,所有,即u g o三者
符號形式下有3種權限操作:
+
:添加權限-
:刪除權限=
:設定權限
按照以上規則,通過指令chmod
可進行如下權限設置
## 設置文件 a.txt 的權限 ##
# 權限爲rwxrw----
chmod u=rwx,g=rw,o= a.txt
# 注意:“u=rwx,g=rw,o=”之間不存在空格
# 權限爲rw-rw-rw-
## 方式1
chmod a=rw a.txt
## 方式2
chmod u=rw,g=rw,o=rw a.txt
# 在以上操作的基礎上,把權限設爲rwxrwxr--
chmod ug+x,o-w a.txt