特殊权限详解

特殊权限有suid,sgid,sticky

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

    chmod u+s files ,如果file原来有执行权限,则suid显示为小写s,否则显示为大写S

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

    chmod g+s files ,如果file原来有执行权限,则sgid显示为小写s,否则显示为大写S

三、sticky,在一公共目录中,自己可以创建、修改和删除自已的文件,但不能删除别人的文件

    chmod o+t directory,如果directory原来有执行权限,则sticky显示为小写t,否则显示为大写T

同时suid,sgid和sticky有八种变化

000--111

例:

    有同一开发团队developteam,成员有user1,user2和user3,在同一项目projcet中,三个用户之间可以查看和修改另外两位的文件,但是不能删除

    1、创建三个用户

        [root@station01 ~]# useradd user1
        [root@station01 ~]# useradd user2
        [root@station01 ~]# useradd user3

    2、创建/tmp/projcet文件夹和develop组,并设置组为developteam

        [root@station01 ~]# groupadd developteam 
        [root@station01 ~]# mkdir /tmp/project
        [root@station01 ~]# chown -R :developteam /tmp/project/

    3、为用户添加附加组

        [root@station01 ~]# usermod -a -G developteam user1
        [root@station01 ~]# usermod -a -G developteam user2
        [root@station01 ~]# usermod -a -G developteam user3
        [root@station01 ~]# chmod g+w /tmp/project/
        [root@station01 ~]# chmod g+s /tmp/project/    
        [root@station01 ~]# id user1

     4、添加sticky 权限

        [root@station01 ~]# chmod o+t /tmp/project/

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