rwx,r為4, w為2 ,x為1,-為0,給權限時衹須要把三個權限值相加,把和做爲參數spa
使用四個字母 u(擁有者)、g(所屬組)、o(其餘)和a(所有),和三個操做符+、-、=分別表示增長、減去和設定。程序
最後一個是將當前有效用戶(執行操做的用戶)的x權限減去。im
除了rwx還有s和t,s出現在文件擁有者或所屬組的x權限位上,出現在擁有者上稱爲Set UID,簡稱SUID,後者為SGID。db
- SUID僅對二進製程序有效
- 執行者對於該程序有x的可執行權限
- 執行權限僅在執行該程序的過程中有效
- 執行者將具備該程序擁有者的權限
設置SUID權限能夠使用「u+s」;當命令須要提供給普通用戶,可是又須要root權限才能正確執行的程序基本上都擁有SUID。好比mount和su。 img
通過「g+s」來設置SGID文件
- SGID對二進製程序有效
- 執行者對於該程序具備x的可執行權限
- 執行者在執行的過程中將會獲得該程序所屬用戶組的支持
SGID用在locate命令上,是但願任何用戶在執行這條命令的時候,都能夠讀取mlocate.db文件的內容,這個文件位於/var/lib/mlocate/mlocate.db,它與locate命令有相同的用戶組,並且用戶組具備讀權限,其餘用戶沒有任何權限。block
SGID還用在目錄上,具備如下功能文字
- 用戶若對於此目錄擁有 r 與 x 權限時,該用戶能夠進入此目錄
- 該用戶在此目錄下的有效用戶組將變成該目錄的用戶組
- 若用戶在此目錄下具備 w 的權限,則用戶所創建的新文件的用戶組與此目錄的用戶組相同
依據這一特性,進入此類目錄的用戶就會發生有效用戶組和實際用戶組不一致的情況。
其餘用戶的 x 權限位,僅對目錄有效,使用「o+t」。
好比A用戶在B目錄創建了文件C,若B目錄擁有SBIT權限,那麼僅有用戶A和root能刪除文件C。
/tmp目錄就是典型,它允許任何用戶在裏面創建文件,但設置了SBIT權限,使文件衹有創建者或root才能刪除。
黨使用數字法設置SUID、SGID和SBIT權限時,SUID為4,SGID為2, SBIT為1,它們放在數字的開頭,好比4755(SUID)、2755(SGID)。