Linux系統是一種典型的多用戶系統,不同的用戶處於不同的地位,擁有不同的許可權。為了保護系統的安全性,Linux系統對不同的用戶訪問同一文件(包括目錄文件)的許可權做了不同的規定 ...
Linux系統是一種典型的多用戶系統,不同的用戶處於不同的地位,擁有不同的許可權。為了保護系統的安全性,Linux系統對不同的用戶訪問同一文件(包括目錄文件)的許可權做了不同的規定
1.在Linux中我們可以使用ll或者ls –l命令來顯示一個文件的屬性以及文件所屬的用戶和組
ls -l
實例中, test 文件的第一個屬性用"d"表示。"d"在Linux中代表該文件是一個目錄文件 ,在Linux中第一個字元代表這個文件是目錄、文件或鏈接文件等等。
- 當為[ d ]則是目錄
- 當為[ - ]則是文件;
- 若是[ l ]則表示為鏈接文檔(link file);
- 若是[ b ]則表示為裝置文件裡面的可供儲存的介面設備(可隨機存取裝置);
- 若是[ c ]則表示為裝置文件裡面的串列埠設備,例如鍵盤、滑鼠(一次性讀取裝置)
接下來的字元中,以三個為一組,且均為『rwx』 的三個參數的組合,註意的,這三個許可權的位置不會改變,如果沒有許可權,就會出現減號[ - ]而已
- [ r ]代表可讀(read)
- [ w ]代表可寫(write)
- [ x ]代表可執行(execute)。
每個文件的屬性由左邊第一部分的10個字元來確定(如下圖)
2.更改文件的許可權
Linux文件許可權有兩種設置方法,一種是數字,一種是符號。
Linux文件的基本許可權就有九個,分別是owner/group/others三種身份各有自己的read/write/execute許可權。
文件的許可權字元為:『-rwxrwxrwx』, 這九個許可權是三個三個一組的!其中,我們可以使用數字來代表各個許可權,各許可權的分數對照表如下:
- r:4
- w:2
- x:1
每種身份(owner/group/others)各自的三個許可權(r/w/x)分數是需要累加的,例如當許可權為: [-rwxrwx---] 分數則是:
- owner = rwx = 4+2+1 = 7
- group = rwx = 4+2+1 = 7
- others= --- = 0+0+0 = 0
所以等一下我們設定許可權的變更時,該文件的許可權數字就是770
chmod [-R] xyz 文件或目錄
選項與參數:
- xyz : 就是剛剛提到的數字類型的許可權屬性,屬性數值的相加。
- -R : 進行遞歸(recursive)的持續變更,亦即連同次目錄下的所有文件都會變更
例:查看test文件下的文件屬性:
這裡面有1個1.txt的文件,其中具有777的許可權
查看test1文件下的文件屬性:
這裡面有1個2.txt的文件,其中具有644的許可權 ,現在修改2.txt許可權 和1.txt許可權一樣為777,可以使用 chmod u=rwx,g=rx,o=r 文件名 來設定
chmod 777 test1/2.txt