linux中文件與目錄的特殊權限

time:18.03.26ui

以如下2個典型的文件及目錄來分析:code

ll /usr/bin/passwd 
-rwsr-xr-x. 1 root root 27832 Jan 29  2014 /usr/bin/passwd
ll -d /tmp
drwxrwxrwt. 23 root root 4096 Mar 25 23:53 /tmp

SUID

s出如今文件擁有者的x權限上時,如咱們上面看到的/usr/bin/passwd這個文件的權限時-rwsr-xr-x,此時就被稱爲SET UID簡稱SUID.
SUID權限僅對二進制可執行文件有效it

執行者對於該文件具備x的權限
本權限僅在執行該文件的過程當中有效
執行者將具備該文件擁有者的權限權限

舉例:
普通用戶使用passwd命令修改本身的密碼, 實際上最終更改的是/etc/passwd文件.該文件權限以下:二進制

ll /etc/passwd
-rw-r--r--. 1 root root 2394 Mar 25 23:17 /etc/passwd

能夠看到只有root用戶纔有寫權限, 由於/usr/bin/passwd設置了suid權限位,普通用戶執行此命令時臨時擁有root權限以間接地修改/etc/passwd從而修改本身的密碼.
設置方法
chmod u+s <文件或目錄>密碼

SGID

s出如今目錄或文件的全部組的x權限上時稱爲SET GID簡稱SGID
設置方法
chmod g+s <文件或目錄>方法

SBIT

t出如今目錄的其餘用戶的x權限上時, 稱爲Sticky Bit簡稱SBIT[僅對目錄有效, 對文件無效]im

做用:

當用戶在該目錄下創建文件或目錄時,僅有本身與 root纔有權力刪除.
最具備表明的就是/tmp目錄,任何人均可以在/tmp內增長、修改文件(由於權限全是rwx),但僅有該文件/目錄創建者與 root可以刪除本身的目錄或文件文件

設置方法
chmod o+t <目錄>co

若特殊權限未設置成功則顯示爲大寫字母 {S, S, T}

相關文章
相關標籤/搜索