Ubuntu系統644、755、777等常見許可權的區別
檔案許可權
在 Ubuntu系統 (其它 Linux 系統也一樣) 中,檔案或目錄的許可權可以分為 3 種:
r:4 讀
w:2 寫
x:1 執行(執行)
-:對應數值0
數字 4 、2 和 1表示讀、寫、執行許可權。
rwx = 4 + 2 + 1 = 7 (可讀寫執行)
rw = 4 + 2 = 6 (可讀寫不可執行)
rx = 4 +1 = 5 (可讀可執行不可寫)
通過4、2、1的組合,得到以下幾種八進位制的許可權:
0 (沒有許可權 );
4 (讀取許可權);
5 ( 4+1 | 讀取+執行);
6 (4+2 | 讀取+寫入);
7 (4+2+1 | 讀取+寫入+執行) 。
常用的檔案許可權
444: r–r–r–
600: rw——-
644 :(4+2) (4) (4)rw-r--r--
666 rw-rw-rw-
700: rwx——
744 rwxr–r–
755 : (4+2+1) (4+1) (4+1)rwxr-xr-x
777: (4+2+1) (4+2+1) (4+2+1) rwxrwxrwx
從左至右,1-3位數字代表 檔案所有者的許可權 ,4-6位數字代表 同組使用者的許可權 ,7-9 數字代表 其他使用者的許可權 。
改變檔案許可權
Linux chmod(英文全拼:change mode)命令是控制使用者對檔案的許可權的命令。
語法
chmod [-cfvR] [--help] [--version] mode file...
引數說明
mode : 許可權設定字串,格式如下 :
[ugoa...][[+-=][rwxX]...][,...]
其中:
-
u
表示該檔案的擁有者,g
表示與該檔案的擁有者屬於同一個群體(group)者,o
表示其他以外的人,a
表示這三者皆是。 -
+
表示增加許可權、-
表示取消許可權、=
表示唯一設定許可權。 -
r
表示可讀取,w
表示可寫入,x
表示可執行,X
表示只有當該檔案是個子目錄或者該檔案已經被設定過為可執行。
其他引數說明:
- -c : 若該檔案許可權確實已經更改,才顯示其更改動作
- -f : 若該檔案許可權無法被更改也不要顯示錯誤訊息
- -v : 顯示許可權變更的詳細資料
- -R : 對目前目錄下的所有檔案與子目錄進行相同的許可權變更(即以遞迴的方式逐個變更)
- –help : 顯示輔助說明
- –version : 顯示版本
例項
將檔案 file1.txt 設為所有人皆可讀取 :
chmod ugo+r file1.txt
將檔案 file1.txt 設為所有人皆可讀取 :
chmod a+r file1.txt
將檔案 file1.txt 與 file2.txt 設為該檔案擁有者,與其所屬同一個群體者可寫入,但其他以外的人則不可寫入 :
chmod ug+w,o-w file1.txt file2.txt
為 ex1.py 檔案擁有者增加可執行許可權:
chmod u+x ex1.py
將目前目錄下的所有檔案與子目錄皆設為任何人可讀取 :
chmod -R a+r *
此外chmod也可以用數字來表示許可權如 :
chmod 777 file
「其他文章」