Linux特殊權限:setuid、setgid、粘貼位

setuidsetgid位是讓普通用戶可以以root用戶的角色運行只有ROOT帳號才能運行的程序或命令!

在LINUX中,有時執行某個命令時,需要對另一個文件進行操作,而這個文件又不是普通用戶權限進行的操作:如,修改用戶密碼的命令passwd,實際上最終更改的是/etc/passwd文件,該文件的所有者和組都是ROOT,其它用戶和同組用戶只有查看的權限,只有ROOT權限的用戶才能更改,但是普通用戶也可以使用該命令更改自已的密碼(更改密碼實質就是修改了/etc/passwd文件)。

090304176.gif

090334193.gif

090456824.gif

setuid權限設置也是使用8進制數,用4000來表示;
setgid權限設置也是使用8進制數,用2000來表示;
如何同時設置setuid和setgid呢?可以用數字4+2來表示;090615690.gif

粘貼位

如何才能使一個目錄既可以讓任何用戶寫入文件,又不讓用戶刪除這個目錄下他人的文件?
這就是粘貼位的作用,也是用8進制的1000表示,比如/tmp這個目錄,默認就是帶了粘貼位權限。

[root@mfsclient~]#ls-ld/tmp#粘貼位用t來表示
drwxrwxrwt5rootroot4096Oct2820:20/tmp

如果一個目錄開放了所有權限777,並且設置了粘貼位權限,那麼此目錄只有屬主和ROOT用戶可以刪除,其它任何用戶都無法刪除此目錄。生產環境中很少用到!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章