setuidsetgid位是讓普通用戶可以以root用戶的角色運行只有ROOT帳號才能運行的程序或命令!
在LINUX中,有時執行某個命令時,需要對另一個文件進行操作,而這個文件又不是普通用戶權限進行的操作:如,修改用戶密碼的命令passwd,實際上最終更改的是/etc/passwd文件,該文件的所有者和組都是ROOT,其它用戶和同組用戶只有查看的權限,只有ROOT權限的用戶才能更改,但是普通用戶也可以使用該命令更改自已的密碼(更改密碼實質就是修改了/etc/passwd文件)。
setuid權限設置也是使用8進制數,用4000來表示;
setgid權限設置也是使用8進制數,用2000來表示;
粘貼位
如何才能使一個目錄既可以讓任何用戶寫入文件,又不讓用戶刪除這個目錄下他人的文件?
這就是粘貼位的作用,也是用8進制的1000表示,比如/tmp這個目錄,默認就是帶了粘貼位權限。
[root@mfsclient~]#ls-ld/tmp#粘貼位用t來表示
drwxrwxrwt5rootroot4096Oct2820:20/tmp
如果一個目錄開放了所有權限777,並且設置了粘貼位權限,那麼此目錄只有屬主和ROOT用戶可以刪除,其它任何用戶都無法刪除此目錄。生產環境中很少用到!