首頁 > Linux教程 > 常用指令 > chmod 檔案權限
linux chmod指令設定目錄/檔案權限詳解
linux中chmod指令用于改變系統檔案或目錄的通路權限,用數字設定法或者文字設定法去控制檔案或目錄的通路權限。linux系統每一檔案或目錄的通路權限都有三組,每組用三位表示,分别為檔案屬主的讀、寫和執行權限;與屬主同組的使用者的讀、寫和執行權限;系統中其他使用者的讀、寫和執行權限。當用ls -l指令顯示檔案或目錄的詳細資訊時,最左邊的一列為檔案的通路權限。
參數
chmod [-cfvR] [--help] [--version] mode file
選擇參數:
--reference= 設定成具有指定目錄或者檔案具有相同的權限
--version 顯示版本資訊
+ 使權限範圍内的目錄或者檔案具有指定的權限
- 删除權限範圍的目錄或者檔案的指定權限
= 設定權限範圍内的目錄或者檔案的權限為指定的值
-c若該檔案權限确實已經更改,才顯示其更改動作
-f 若該檔案權限無法被更改也不要顯示錯誤訊息
-R對目前目錄下的所有檔案與子目錄進行相同的權限變更(即以遞回的方式逐個變更)
-v運作時顯示詳細處理資訊
mode 權限設定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...]
u : 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個群體(group)者,o 表示其他以外的人,a 表示這三者皆是。
+ : 表示增權重限、- 表示取消權限、= 表示唯一設定權限。
r : 表示可讀取,w 表示可寫入,x 表示可執行,X 表示隻有當該檔案是個子目錄或者該檔案已經被設定過為可執行。
權限解讀
ls -al java.txt
-rw-r--r-- 1 root root 61 10-13 08:23 java.txt //表示java.txt是檔案不是目錄,屬主有讀寫權限,屬主同組的使用者隻有讀權限,其他使用者也隻有讀權限
第一列共有10個位置,第一個字元指定了檔案類型。在通常意義上,一個目錄也是一個檔案。如果第一個字元是橫線,表示是一個非目錄的檔案。如果是d,表示是一個目錄。從第二個字元開始到第十個共9個字元,3個字元一組,分别表示了3組使用者對檔案或者目錄的權限。權限字元用橫線代表空許可,r代表隻讀,w代表寫,x代表可執行。
文字設定法
1. 文法
chmod [who] [+ | - | =] [mode] 檔案名
2. 執行個體
ls -al tomcat001.log //檢視原來檔案的權限
-rw-r--r-- 1 root root 302108 10-13 10:03 tomcat001.log
chmod a+x tomcat001.log //增加檔案所有使用者組可執行權限
ls -al tomcat001.log //檢視新的檔案權限
-rwxr-xr-x 1 root root 302108 10-13 10:03 tomcat001.log
數字設定法
1. 文法
chmod abc 檔案名 //其中a,b,c各為一個數字,分别表示User、Group、及Other的權限。
第一個數字表示檔案所有者的權限
第二個數字表示與檔案所有者同屬一個使用者組的其他使用者的權限
第三個數字表示其它使用者組的權限。
權限分為三種:讀(r=4),寫(w=2),執行(x=1)。綜合起來還有可讀可執行(rx=5=4+1)、可讀可寫(rw=6=4+2)、可讀可寫可執行(rwx=7=4+2+1)。
2. 執行個體
chmod 755 abc.log
chmod 4755 abc.log
1.檔案所有者可讀可寫可執行
2.與檔案所有者同屬一個使用者組的其他使用者可讀可執行
3.其它使用者組可讀可執行
chmod 4755與chmod 755 的差別在于開頭多了一位,這個4表示其他使用者執行檔案時,具有與所有者相當的權限。
執行個體
chmod 751 test.conf
chmod u=rwx,g=rx,o=x test.conf
2種方式效果一樣,給test.conf的屬主配置設定讀、寫、執行(7)的權限,給file的所在組配置設定讀、執行(5)的權限,給其他使用者配置設定執行(1)的權限
chmod =r ccc.log
chmod 444 ccc.log
2種方式效果一樣,為所有使用者配置設定讀權限
版權聲明:本文為JAVASCHOOL原創文章,未經本站允許不得轉載。