特殊权限

一、SUID:    运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者

  • chmod u+s FILE

  • chmod u-s FILE

    • 如果FILE本身就有执行权限,则SUID显示为s,否则为S

二、SGID:    运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者所属基本组

  • chmod g+s FILE

  • chmod g-s FILE

三、sticky:    在一个公共目录下,每个用户都可以创建,删除自己的文件,但是不能删除他人文件

  • chmod o+t DIR

  • chmod o-t DIR

四、练习

  • 实现hadoop、hive、hbase相互可执行rwx操作,但不能删除自身以外的其他用户创建文件

    • mkdir /tmp/project

    • groupadd developteam

    • chown -R developteam /tmp/project/

    • usermod -a -G developteam hadoop

    • usermod -a -G developteam hive

    • usermod -a -G developteam hbase

    • chmod g+w /tmp/project/

    • 此时每个用户所创建的文件属主与属组都是自己,无法实现相互访问

    • chmod g+s /tmp/project/

    • 此时权限被改为s,属组改为上一级目录,即developteam ,可实现相互访问。但与此同时在同组下的其他用户可以删除任意用户的文件

    • chmod o+t /tmp/project/

    • 此时就不会造成人以用户可以删除其他用户文件的问题

 

你可能感兴趣的:(SUID,SGID,Sticky)