一个可执行文件,注意是可执行文件,在执行时,一般情况下该文件只拥有调用该文件的用户所具有的权限 。
    而setuid/setgid则可以改变这种设置

-----------------------

setuid:

    设置使文件在执行阶段 具有 文件所有者的权限。典型的案例就是用户修改自己的密码,即操作/usr/bin/passwd文件,如果普通用户执行该文件,则在执行过程中,该文件可以获得root权限,从而可以更改用户的密码。

--------------------------

setgid:

    该权限只对目录有效。目录被设置该位后,任何用户在此目录下创建的文件都具有和该目录所属的组相同的组

-------------------------------

sticky bit:

    该位可以理解为防删除位。一个文件是否可以被某用户删除,主要取决于该文件所属的组是否对该用户具有写权限。如果没有写权限,则这个目录下的所有文件都不能被删除,同时也不能添加新文件。
    如果希望用户能添加文件但同时不能删除文件,则可以对文件使用sticky位。
     设置该位后,即便用户对目录具有写权限,也不能删除该文件。

--------------------------------

数字设定法中 八进制数字的意义

setuid位:

    如果该位为1,显示为“S",则表示设置setuid,其显示在原来的x标志位上。

setgid位:
 
    如果该位为1,显示为"S",则表示设置setgid,其显示在原来的x标志位上

sticky位:

    如果该位为1,显示为"T",则表示设置sticky,其显示在原来的x标志位上。

用ls -l显示时:

    如果该文件或者文件夹原来有执行权限,则设置后显示小写字母(s,s,t).否则显示为大写字母(S,S,T)

注意:这种文件存在安全风险,谨慎使用。在实际应用中,一般用户可以使用如下命令来寻找系统中的具有特殊标志的文件:

  #find -perm +6000 -type f -exec ls -ld {}\;>setuid.ext&