SUID/SGID/SBIT 的属性同样是用 chmod 指令设定,在原本 chmod 设定时的三个数字前面再加一个数字。这三个属性的加权分别为
- SUID: 4
- SGID: 2
- SBIT: 1
SUID (Set UID)
让档案在执行时,该档案执行时,档案的执行身份会暂时变成该档案的“拥有者”。Ex:
chmod 4755 test.pl
SGID (Set GID)
当 SGID 设在档案时,让该档案执行时,档案的有效群组会暂时变成该档案的“拥有群组”。
当 SGID 设在目录时,则该目录的“拥有群组”会自动设定到其下所建立的档案 (或子目录)。
SBIT (StickyBit)
SBIT 仅对目录有效,当目录设定 SBIT 时,在该目录下建立的档案 (或子目录),只有 root 及档案 (或子目录) 的拥有者可以删除,例如:“/tmp] 。
错误处理
如果设为 SUID 的 perl 程式要执行时,出现错误讯息“Can't do setuid (cannot exec sperl)”,请安装 suidperl 套件:
yum install perl-suidperl