1、檢視檔案/檔案夾權限:
1、檢視某個檔案權限的指令
ls -l + 要檢視檔案的檔案名
2、檢視某個檔案夾裡所有檔案/檔案夾的權限
ls -l + 檔案夾名
3、如果要檢視某個檔案夾的權限,需要在該檔案夾外部目錄下執行
來列印所有檔案/檔案夾權限,而無法單獨檢視某個檔案夾的權限
- 下面舉例說明
我們在桌面上建一個檔案夾,名字叫chmod_test,裡面放1個檔案和一個檔案夾:111.txt檔案和test檔案夾,如圖:

1、檢視111.txt檔案的權限:
用終端進入chmod_test檔案夾,執行
ls -l 111.txt
,就會列印出111.txt的權限資訊,如下圖:
下面這行資訊,就是111.txt的權限資訊,至于是什麼意思,後面會說
2、再來看看test檔案夾的權限:
因為無法單獨檢視檔案夾權限,要檢視test檔案的權限就隻能在其父目錄,即chmod_test這個檔案夾裡執行檢視指令:
ls -l
,就會列印出chmod_test目錄裡所有檔案、檔案夾的權限資訊,如圖:
下面這行資訊,就是test檔案夾的權限資訊
drwxr-xr-x xuye staff : test
- 好,指令和例子都看過了,下面講講如何根據列印的資訊了解檔案權限:
權限資訊通用格式:
-rwxr-xr-x number user group filesize updatetime filename
可以看到通用格式分成了7部分,分别是:
1、檔案屬性,即檔案的類型/讀/寫/執行等權限,共10個字元。
- 第一個字元表示類型,後9個字元分3組,表示該檔案對于目前使用者(user)、目前使用者所在組(group)、其他使用者(other)的讀/寫/執行權限。
- rwx:代表屬主權限,-代表無權限;r代表具有可讀權限; w代表具有可寫權限;x代表具有可執行權限
拿111.txt檔案舉例:
第一個字元是
-
,表示類型,通常檔案都是
-
。當然還有其他類型,比如
d
表示目錄等。
接下來3個字元是
rw-
,表示該檔案對于目前使用者的權限是r/w,即目前使用者能對111.txt讀、寫,但是不能執行,是以執行權限塊是
-
,表示沒有執行權限。
再接下來3個字元是
r--
,表示該檔案對于目前使用者所在的組的成員來說,隻能執行讀,寫和執行都是無權限的。
最後3個字元是
r--
,表示該檔案對于其他使用者來說也是隻能讀,不能寫和執行。
【ps】111.txt檔案10個字元
-rw-r--r--@
最後面還有個
@
,這個其實是mac系統的檔案自帶的一個表示檔案有擴充屬性的标示,與權限無關。
2、number,即檔案inode數量,inode表示儲存檔案元資訊的區域
可見111.txt的inode值是1
3、user,即目前使用者名
可見111.txt的目前目前使用者名是xuye
4、group,即目前使用者所在的組的名字
可見111.txt的目前使用者所在的組是staff組
5、filesize,即該檔案大小,機關是byte
111.txt由于是空的,是以大小是0byte
6、updatetime,即檔案的最後修改時間
可見111.txt的最後修改時間是4 13 17:45,即4月13号17:45
7、filename,即檔案名
111.txt的檔案名自然就是111.txt
2、修改檔案的權限
111.txt檔案的其他使用者權限是
r--
,即隻能讀不能寫,那其他使用者想寫怎麼辦,就得修改111.txt檔案的權限,讓其他使用者也能寫。
修改權限的指令格式
chmod [<權限範圍><權限操作><具體權限>] [檔案或目錄…]
<權限範圍>
u:User,即檔案或目錄的擁有者。
g:Group,即檔案或目錄的所屬群組。
o:Other,除了檔案或目錄擁有者或所屬群組之外,其他使用者皆屬于這個範圍。
a:All,即全部的使用者,包含擁有者,所屬群組以及其他使用者。
<權限操作>
+:表示增權重限
- :表示取消權限
=:表示唯一設定權限
<具體權限>
r:表示可讀取
w:表示可寫入
x :表示可執行
好,現在讓其他使用者都可以對111.txt檔案有寫的權限,則執行
chmod o+w .txt
過程如圖:
再使用
ls -l 111.txt
檢視檔案權限,發現第三組權限從
r--
變成了
rw-
,确實修改了111.txt對其他使用者的權限,現在其他使用者可以修改111.txt了
那現在我想讓所有使用者都能執行111.txt,但是不可以修改,則執行
chmod a+x-w txt
再看一下權限,發現變成了
-r-xr-xr-x@ 1 xuye staff 0 4 13 17:45 111.txt
所有使用者都不能修改111.txt了。
打開111.txt檔案随便輸入點東西,系統提示我們該檔案已經被鎖定,無法操作,如圖:
常用的linux檔案權限:
444 r--r--r-- : 所有使用者都隻有讀權限
600 rw------- : 檔案所有者具有讀、寫權限,其他使用者沒有權限
644 rw-r--r-- : 檔案所有者具有讀寫權限,同組使用者具有讀權限,其他使用者具有讀權限
666 rw-rw-rw- :檔案所有者,同組使用者,其他使用者都具有讀寫權限,沒有執行權限
700 rwx------ : 檔案所有者具有讀寫執行權限,同組使用者其他使用者均沒有任何權限
744 rwxr--r-- : 檔案所有者具有讀寫執行權限,同組使用者和其他使用者隻有讀權限
755 rwxr-xr-x : 檔案所有者具有讀、寫、執行權限,同組使用者和其他使用者具有讀、執行權限
777 rwxrwxrwx : 全部使用者都用全權限
從左至右,1-3位數字代表檔案所有者的權限,4-6位數字代表同組使用者的權限,7-9數字代表其他使用者的權限。
具體的權限是由數字來表示的,讀取的權限等于4,用r表示;寫入的權限等于2,用w表示;執行的權限等于1,用x表示;
通過4、2、1的組合,得到以下幾種權限:0(沒有權限);4(讀取權限);5(4+1 | 讀取+執行);6(4+2 | 讀取+寫入);7(4+2+1 | 讀取+寫入+執行)
以755為例:
1-3位7等于4+2+1,rwx,所有者具有讀取、寫入、執行權限;
4-6位5等于4+1+0,r-x,同組使用者具有讀取、執行權限但沒有寫入權限;
7-9位5,同上,也是r-x,其他使用者具有讀取、執行權限但沒有寫入權限。
rwx權限數字解釋:
chmod也可以用數字來表示權限
如 chmod 777 file