高级权限Set GID Sticky Bit

把s放到文件的所属用户组x位置上的话,就是SGID。那么SGID的功能是什么呢?和SUID一样,只是SGID是获得该程序所属用户组的权限。这相SGID有几点需要我们注意:*:SGID主要用在目录上如果用户在此目录下具有w权限的话,若使用者在此目录下建立新文件,则新文件的群组与此目录的群组相同。

案例:[root@localhost ~]# mkdir /opt/dir1

[root@localhost ~]# groupadd hr

[root@localhost ~]# chmod 775 /opt/dir1/

[root@localhost ~]# ll -d /opt/dir1/

drwxrwxr-x. 2 root root 6 Jul 19 15:20 /opt/dir1/

[root@localhost ~]# chown .hr /opt/dir1/

[root@localhost ~]# chmod g+s /opt/dir1/

[root@localhost ~]# ll -d /opt/dir1/

drwxrwsr-x. 2 root root 6 Jul 19 15:20 /opt/dir1/

[root@localhost ~]# touch /opt/dir1/a.txt

-rw-rw-r--. 1 alice hr 0 Jul 19 15:23 /opt/dir1/a.txt

#### Sticky Bit

这个就是针对others来设置的了,和上面两个一样,只是功能不同而已。

SBIT(Sticky Bit)目前只针对目录有效,对于目录的作用是:当用户在该目录下建立文件或目录时,仅有自己与 root才有权力删除。
[root@localhost home]# cd /home/

[root@localhost home]# mkdir dir2

[root@localhost home]# chmod 777 dir2/ //确保其他人能操作目录

[root@localhost home]# chmod o+t dir2/ //给予dir1目录Sticky

[root@localhost home]# ll -d dir1/

drwxrwxrwt 2 root root 4096 Jul 13 16:09 dir1/

[alice@localhost dir2]$ touch  alice.txt //用户alice在/home/dir2创建一个文件

[jack@localhost dir2]$ touch jack.txt //用户jack在/home/dir2创建一个文件

测试alice删除jack创建的文件,无法删除

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容