1. 程式人生 > >Linux 命令學習--- chmod

Linux 命令學習--- chmod

chmod

在Linux中,不同的使用者(包括不同組的使用者)對同一個檔案的訪問許可權是不一樣的,當想要改變某個使用者對某個檔案的許可權時,最常用來改變許可權的命令就是 chmod
在瞭解這個命令之前,首先就應該對linux下許可權的表示有一定的瞭解。
先上圖瞭解下:
這裡寫圖片描述
在圖片中的 - r w - r- - r - -,也就是通過 ls -l 命令檢視檔案時,每一行的二到十列都是檔案的許可權。
在Linux 中共有三種許可權,且按 rwx 的順序排列 :
r:表示可讀
w:表示可寫
x:表示可執行
-表示不具備對應位置的許可權。
從第二列到第十列一共九列,每三列分為一組,分別為:
1_

檔案所屬使用者對檔案的許可權(用 user 表示,可縮寫為 u);
2_與檔案所屬使用者同組的使用者對檔案的許可權(用 group 表示,可縮寫為 g);
3_除以上兩種使用者外,其他使用者對檔案的許可權(用 other 表示,可縮寫為 o).。
例如上圖中:user對 test.txt 檔案的許可權是 rw- ,同組使用者的許可權是r- -,other 對檔案的許可權是 r- - 。
除了用 rwx 的方式表示許可權外,還有一種使用數字表示許可權的方式:
讀許可權對應 4;
寫許可權對應 2;
執行許可權對應 1;
- 對應 0 。
針對 user ,group,other這三種使用者,他們對一個檔案的所有許可權可以用他們具有的許可權對應的數字之和來表示,例如上圖:
user對test.txt檔案的許可權是6(4+2+0),group 的許可權是 4(4+0+0),other的許可權是 4(4+0+0)。所以呢,- r w - r- - r - -
就可以表示為644,這樣就是 user, group, other 對 test.txt 檔案的許可權表示了。

鋪墊打好了,那怎麼通過chmod 來改變使用者對檔案的操作許可權呢?
chmod 的命令格式:chmod 許可權的改變 要改變的檔案(或者資料夾)

例如:
要使 group 對test.txt 有讀寫許可權,other 對test.txt 有讀寫許可權


chmod g+w,o+w test.txt  

或者這樣

chmod g=u,o=u test.txt

甚至這樣:

chmod 666 test.txt

還能這樣:

chmod g=rw,o=rw test.txt

當想剝奪group 和 other 對test.txt 的寫許可權時:

chmod g-w,o-w test.txt

當想給所有使用者對test.txt加上執行許可權時,可以這樣:

chmod u+x,g+x,o+x test.txt

嫌麻煩還可以這樣:

chmod a+x test.txt

當想改變一個資料夾以及資料夾內的檔案的許可權時該怎麼辦呢?這個時候可以在命令末尾加上:

-R(注意,必須是大寫的R)

例如:

chmod o-w directory/ -R