天天看點

linux指令學習之---- chmod

學習記錄linux指令,參考自菜鳥教程。

指令:

chmod

Linux/Unix 的檔案調用權限分為三級 : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所調用。
           

使用權限 :

所有使用者
           

文法格式

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 a+r file1.txt
           

此外chmod也可以用數字來表示權限如 :

chmod 777 file
           

文法為:

chmod abc file
           

其中

a,b,c

各為一個數字,分别表示

User、Group、及Other

的權限。

r=4,w=2,x=1
           

若要

rwx

屬性則

4+2+1=7

若要

rw-

屬性則

4+2=6

若要

r-x

屬性則

4+1=5

chmod a=rwx file

chmod 777 file

效果相同

chmod ug=rwx,o=x file

chmod 771 file

效果相同

若用

chmod 4755 file

可使此程式具有

root

的權限

*注:

chmod 4755

chmod 755

的差別在于開頭多了一位,這個4表示其他使用者執行檔案時,具有與所有者相當的權限。

例如:

root

使用者建立了一個上網認證程式

netlogin

,如果其他使用者要上網也要用到這個程式,那就需要

root

使用者運作

chmod 755 netlogin

指令使其他使用者也能運作

netlogin

但是

netlogin

執行時可能需要通路一些隻有

root

使用者才有權通路的檔案,那麼其他使用者執行

netlogin

時可能因為權限不夠還是不能上網。

這種情況下,就可以用

chmod 4755 netlogin

設定其他使用者在執行

netlogin

也有

root

使用者的權限,進而順利上網。

繼續閱讀