sSuid:当一个文件的属主有s权限,意味着任何用户执行此程序时,其进程的发起着不再是发起者本人,而是以此文件属主的身份来执行此程序。

命令chmod u+s file#chmod 4777 file是放在执行权限位的,小写s表示原有属主有执行权限,大写s表示原有属主无执行权限。

 

sSgid:当一个文件的属组有s权限,意味着任何用户执行此程序时,其进程的发起属组不再是发起者本人所在的组,而是以此文件属组的身份来执行此程序。小写s表示原有属组有执行权限,大写s表示原有属组无执行权限。例:chmod g+s file#chmod 2777 file

Sgid的一个应用的casegroupaddmygrp#将用户加入这个组(ab用户,附加组)#mkdir /test

#chown :mygrp  /test  # chmod g+s /test  # chmod o+t file

这样实现了:ab用户此时创建在/test下的文件属组皆为mygrp,他俩可以互访各自创建在/test下的文件,并且只能删除自己的文件,不可以删除他人的文件。

 

tstickey:粘帖位:附加在other的执行权限为上,小写t表示原有执行权限,大写t表示原无执行权限,表示此文件被黏贴住了,除了属主其他用户即使有写权限也删除不了

例:chmod o+t file#chmod 1777 file

 

 

 

 

facl:文件访问控制列表(实现前提:文件所在分区的挂载选项要支持acl功能,mount –o acl)实现方法1)编辑/etc/fstab文件,加入选项defaults,acl即可(2umount分区

#tune2fs –o acl 分区(调整分区的默认挂载选项) 取消用命令#tune2fs  –o  ^acl 分区#mount –a3)临时:mount –oacl

 

Facl定义:实现在原有访问控制机制之外补充一种文件访问控制机制

 

查看文件的ACL权限:#getfacl  file

设定用户对文件的权限(ACL)例:#setfacl      -m    u:hive:rw- file

设定用户对文件的权限(ACL)格式:#setfacl -m    u:username:mode  file

设定用户组对文件的权限(ACL)格式:#setfacl      -m    u:groupname:mode  file

取消用户对文件的权限(ACL)例:#setfacl      -x      u: username  file

取消用户组对文件的权限(ACL)例:#setfacl -x      u: groupname  file

拒绝某用户对文件的权限(ACL)格式:#setfacl      -m    u:hive:--- file

*这样即使hive用户所在的others对文件有权限,hive也无法访问文件了---àlinux内核的文件访问控制流程1)查看属主权限(2)查看acl用户权限(3)查看属组权限(4)查看acl组权限(5)查看other权限。