首頁 > 軟體

檔案的 SUID 、SGID 、Sticky屬性

2020-06-16 18:00:59

SUID 屬性
SUID屬性一般用在可執行檔案上,當使用者執行該檔案時,會臨時擁有該執行檔案的所有者許可權。使用”ls -l” 或者”ll” 命令瀏覽檔案時,如果可執行檔案所有者許可權的第三位是一個小寫的”s”,就表明該執行檔案擁有SUID屬性。比如/usr/bin/passwd檔案。

$ ll /usr/bin/passwd 
-rwsr-xr-x 1 root root 41284 49  2012 /usr/bin/passwd

SGID屬性
SGID屬性應用在目錄上時,該目錄中所建立的檔案或子目錄的擁有組都會是該目錄的擁有組。當SGID屬性應用在可執行檔案上時,其他使用者在使用執行檔案時就會臨時擁有該執行檔案的擁有組許可權。在使用”ls -l” 或者”ll” 命令瀏覽目錄時,如果擁有組許可權的第三位是一個小寫的”s”,就表明該執行檔案或者目錄擁有SGID屬性。

Sticky Bit 屬性
Sticky屬性只能應用在目錄,當目錄擁有Sticky屬性,所有在該目錄中的檔案或子目錄無論是什麼許可權,只有檔案或者子目錄所有者和root使用者能做刪除動作。在使用”ls -l”或者”ll”命令瀏覽目錄時,如果其他使用者許可權的第三位是一個小寫的”t”,就表明該執行檔案或者目錄擁有Sticky屬性。

注意:linux系統規定,如果原本該位上有x,則這些屬性顯示問小寫字母(有效),否則顯示大寫字母(無效)

設定SUID、SGID、Sticky屬性

可以使用字元設定(s 表示SUID和SGID,t表示Sticky)
如:

chmod u+s test_file    #給檔案增加SUID屬性
chmod g+s test_dir     #給目錄增加SGID屬性
chmod o+t test_dir     #給目錄增加Sticky屬性       

還可以用數位的方式設定(4表示SUID,2表示SGID,1表示Sticky)
如:

chmod 4555 test_file    #給檔案增加SUID屬性
chmod 2555 test_file    #給檔案增加SGID屬性
chmod 1555 test_dir     #給檔案增加Sticky屬性

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-05/116982.htm


IT145.com E-mail:sddin#qq.com