特殊許可權set uid set gid stick

2021-09-20 16:37:11 字數 1333 閱讀 4662

linux中除了常見的讀(r)、寫(w)、執行(x)許可權以外,還有3個特殊的許可權,分別是setuid、setgid和stick bit

-rwsr-xr-x. 1 root root 27832 jun 10  2014 /usr/bin/passwd

所屬者多了乙個r,這就是setuid

setuid就是:讓普通使用者擁有可以執行「只有root許可權才能執行」的特殊許可權,setgid同理指"組"

stick bit (貼上位)

[root@centos-128 ~]# ls -ld /tmp/

drwxrwxrwt. 8 root root 225 oct 15 17:26 /tmp/

tmp目錄是所有使用者共有的臨時資料夾,所有使用者都擁有讀寫許可權,這就必然出現乙個問題,a使用者在/tmp裡建立了檔案a.file,此時b使用者看了不爽,在/tmp裡把它給刪了(因為擁有讀寫許可權),那肯定是不行的。實際上是不會發生這種情況,因為有特殊許可權stick bit(貼上位)許可權,正如drwxrwxrwt中的最後乙個t;

stick bit (貼上位)就是:除非目錄的屬主和root使用者有許可權刪除它,除此之外其它使用者不能刪除和修改這個目錄。也就是說,在/tmp目錄中,只有檔案的擁有者和root才能對其進行修改和刪除,其他使用者則不行,避免了上面所說的問題產生。用途一般是把乙個資料夾的的許可權都開啟,然後來共享檔案,象/tmp目錄一樣。

setuid:chmod u+s ***

setgid: chmod g+s ***

stick bit : chmod o+t ***

setuid:chmod 4755 ***

setgid:chmod 2755 ***

stick bit:chmod 1755 ***

最後,在一些檔案設定了特殊許可權後,字母不是小寫的s或者t,而是大寫的s和t,那代表此檔案的特殊許可權沒有生效,是因為你尚未給它對應使用者的x許可權 

軟鏈結檔案(相當於window的快捷方式,刪除後對檔案內容無影響):

ln -s 原始檔 目標檔案

[root@test ~]# ln -s 1.txt 2.txt

[root@test ~]# ls -la 2.txt 

lrwxrwxrwx 1 root root 5 oct 23 12:02 2.txt -> 1.txt

硬連線檔案(相當於複製乙個檔案,但是占用了容量)

[root@test ~]# ln 1.txt 2.txt

[root@test ~]# du -sh 1.txt 

4.0k 1.txt

[root@test ~]# du -sh 2.txt 

4.0k 2.txt

許可權和特殊許可權

許可權 1 對限 a 三者 u 擁有者 屬主 g 基礎組 主組 屬組 0 其他人 讀 寫 執行 讀 寫 執行 讀 寫 執行 許可權位共九位 r w x r w x r w x u g o 列 u rwx 擁有者具有讀寫執行的許可權 g r x 基本組具有讀和執行的許可權 o r 其他人只具有讀的許可...

特殊許可權set uid set gid stick

一 linux的特殊許可權 1 特殊許可權set uid 普通使用者執行passwd命令時,可以臨時獲得root許可權,從而可以更改密碼,passwd顯示的是 rws,並非傳統的rwx,這個s就是set uid許可權 平時工作中,普通使用者如果使用命令ls root 會提示沒有許可權的,如何給這些二...

Linux 特殊許可權

特殊許可權 對檔案的影響 對目錄的影響 u s suid 以擁有檔案的使用者身份,而不是以執行檔案的使用者身份執行檔案。無影響。g s sgid 已擁有檔案的組的身份執行檔案。在目錄中最新建立的檔案將其組所有者設定為與目錄的組所有者相匹配。o t sticky 無影響。對目錄具有寫入許可權的使用者僅...