ACL访问控制列表及特殊权限

ACL:访问控制列表: Access Control List即文件/目录的访问控制列表,可以针对任意指定的用

户/组设置权限
ACL将用户对一个文件访问权限就像是放在了一个列表里,列表的每一项分别对应了一个或一组

具体用户对该文件的特定访问权限。这就使任意的访问权限管理成为了可能。

设定ACL:
格式: setfacl [option] id:operand
#setfacl -m  u:UID:PERM   设定用户
#setfacl -m  g:GID:PERM   设定组
#setfacl -m  g:UID:PERM   设定某个组的某个用户的acl权限
 [注:  id 用户 (查看用户的id信息)]
例:
  setfacl -m u:centos:rw gentoo.c (对centos用户设定具有对gentoo.c具有读写权限)
设定掩码权限:
  setfacl -m m::rw- 1.c (设置掩码权限)
  setfacl -m u:centos:rwx 1.c
   结果1.c的权限是rw而不是rwx,比rw少可以,比rw多就不行
查看ACL:
#getfacl (文件) 查看ACL
例:
  getfacl gentoo.c(查看该文件的acl)
撤销ACL:
#setfacl -x u:UID  (文件) 撤销用户权限
#setfacl -x g:GID  组      撤销组权限

setfacl
     -b  移除文件上所有acl
     -k  删除默认设定
     -d  默认访问列表  (只能设置在目录上,目录下的文件可以自动继承) 
           setfacl -m d:u:(用户):r--  (目录)
     -m 设定有效权限位  setfacl -m m::r-- (文件)


文件权限管理扩展:  S权限  t权限
 SUID:Set UID  设置使文件在执行阶段具有文件所有者的权限,典型的文件是/etc/passwd.
      如果一般用户执行该文件,则在执行过程中,该文件可以获得root权限,从而可以更改用

户密码。
      chmod u+s /root a.txt(为a.txt设置s为)
     如果a.txt原来没有执行权限,则添加上的s会是小写,如果原来有执行权限,S则会是大写
SGID:Set GID 该权限只对目录有效。目录被设置该位后,任何用户在此目录下创建的文件都
             具有和该目录所属的组相同的组。
STICKY:
        ll -d /tmp (/tmp的权限是777,就是公共场所,谁都可以新建和删除,加了在othet

用户上置t
        位之后,就谁都可以建,但是只能删自己的,不能删别人的.加在o位置上表示出了属主

外的所有
        用户都只能建,不能删,注意此处的o跟我们平常理解的o不同,平常的o是除了属主和

属组。)
        例:chmod o+t /project/
SUID,SGID,STICKY 组合使用
        000 0
        001 1
        010 2
        011 3
        100 4
        101 5
        110 6
        111 7
        如果原来一个目录/tmp/test是755,如果想让他有SUID,SGID位,则chmod 6755

/tmp/test即可

你可能感兴趣的:(linux,职场,acl,休闲,t权限,s权限)