Linux学习 - ACL权限

一、ACL权限简介

  ACL权限是为了防止权限不够用的情况,一般的权限有所有者、所属组、其他人这三种,当这三种满足不了我们的需求的时候就可以使用ACL权限

二、ACL权限开启

  1 查看当前系统分区

      df  -h

      

  2 查看分区ACL权限是否开启

      dumpe2fs -h /dev/sda5

      dumpe2fs命令是查询指定分区详细文件系统信息的命令

      

      此时显示默认的挂载设置为ACL

  3 临时开启分区ACL权限

      mount -o remount,acl /

      重新挂载根分区,并挂载加入acl权限

  4 永久开启分区ACL权限

      vi /etc/fstab

      如果默认的挂载设置不是ACL,可以在default改成default,acl

      mount -0 remount /

      重新挂载文件系统或重新启动系统,是修改生效

三、查看ACL权限

      getfacle 文件名

四、设定ACL权限

      useradd zhangsan          新建用户zhangsan

      useradd lisi              新建用户lisi

      useradd student           新建用户student

      groupadd testg             新建组testg

      mkdir /project             根目录下创建目录project

      gpasswd -a zhangsan testg      将zhangsan添加到组testg中

      gpasswd -a lisi testg          将lisi添加到组testg中

      chown root:testg /project/       更改project目录所有者、所属组

      chmod 770 /project            更改project目录的权限

      setfacl -m u:student:rx /project/      设定用户student对project目录的acl权限

      groupadd test1g

      setfacl -m g:test1g:rwx /project/      设定组test1g对project目录的acl权限

      注:project目录的所有者是root,所属组是testg;用户zhangsan和lisi是testg组的附属成                             员;用户student不属于project目录的所有者、所属组、其他人,设定用户student对                             project目录的ACL权限为r-x权限;test1g组不是project目录的所属组,设定test1g组                             对project目录的ACL权限为rwx权限

五、修改ACL最大有效权限mask

      setfacl -m m:rx /project/        设定最大有效权限mask为r-x

      注:当最大有效权限mask为r-x时,将其他用户或者组的权限与上r-x得到实际权限

六、删除ACL权限

      setfacl -x u:student /project/      删除用户student对project目录的ACL权限

      setfacl -x g:test1g /project/        删除组test1g对project目录的ACL权限

      setfacl -b /project/           删除所有对/project/目录的ACL权限

七、设置递归ACL权限

      setfacl -m u:用户名:权限 -R 目录名

        -R  递归

      例:setfacl -m u:student:rx -R /project/

八、默认递归ACL权限

      setfacl -m d:u:用户名:权限 目录名

       例:setfacl -m d:u:student:rx -R /project/

 

      setfacl [选项] 文件名

        -m  设定ACL权限

        -x   删除指定的ACL权限

        -b  删除所有的ACL权限

        -d  设定默认ACL权限

        -k  删除默认ACL权限

        -R  递归设定ACL权限

posted @ 2018-03-02 16:41  hwzheng  阅读(223)  评论(0编辑  收藏  举报