Linux檔案分為三種身分和四中權限。
u:檔案的擁有者
g:檔案所屬的群組
o :其他使用者
對每個身份,又有四種權限,分別為:
r:讀取檔案的權限(read )
w:寫入檔案的權限(write)
x:執行的權限(execute)
s:特殊權限
在Linux檔案權限詳解中我們知道linux中有兩種表示檔案權限的方式,分別為數字以及符號表示方式。
chmod 755 test.sh
將755換算成字元形式,為rwxr-xr-x,也就是說文件的擁有者、所屬群組以及其他使用者都可以讀取與執行test.sh這個文件,但是只有擁有者自己可以寫入這個文件,也就是其他人無權修改test.sh這個文件。 (當然root用戶無此限制,想改誰就該誰,這也是一個體現root帳號至高無上權力的體驗!)
透過數學形式改變文件的權限比較簡單,只要實現算好需要給文件賦予的權限,然後呼叫chmod指令即可,呼叫形式為:
chmod 新的權限檔案清單
chmod +x test.sh
數學形式可以一次改變檔案的所有三種身分的四種權限,而字元形式則更為靈活,可以給某個身分的某個權限單獨進行設置,例如上面的指令就是給三種身分都賦予執行的權限,你也可以分開單獨設定:
chmod u+x test.sh 只給擁有者加上可執行權限
chmod g+x test.sh 只給群組身分加上可執行權限
chmod o+x test.sh 只給其他人身分加上可執行權限
以上三條指令綜合在一起等價於上面的那條指令,都是給所有身分都開啟可執行權限的功能,你也可以像下面這樣來操作:
chmod a+x test.sh
這裡的a就代表所有的3中身分!
如果要去掉某個身分的某個權限,只需要將+變成-即可,例如移除其他人身分的可執行權限:
chmod o-x test. sh
對於讀取、寫入等權限,按照以上方式多進行練習即可,chmod透過字元形式改變檔案權限的操作請參閱下表:
chmod |
u ##goa |
+(加上)-(減)=(設定) | rwx |
|
chmod u=rwx,g+rx,o-x test.sh
以上是Linux之chmod使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!