ACL权限

来源:互联网 发布:学生请假软件 编辑:程序博客网 时间:2024/04/30 13:27

为什么需要ACL权限:
文件就三个权限 所有者权限 组权限 其他权限
有时候不够用 这时候就需要ACL权限 用来解决用户身份不够的问题

开启ACL:

#查看分区ACL权限是否开启:dumpe2fs -h /dev/sda5 dumpe2fs命令是查询指定分区详细文件系统信息的命令;选项: -h:仅显示超级块中信息,而不显示磁盘块组的详细信息;文件信息里项里包含 Default mount options: user_xattr acl 那就说明分区是支持acl的#临时开启分区ACL权限: mount -o remount,acl / 重新挂载根分区,并挂在加入ACL权限#永久开启分区ACL权限:vi /etc/fstab (在默认文件系统后加上,acl 即可)e.g:UUID=24f28fc6-717e-4bcd-a5f7-32b959024e26 /   ext4 defaults,acl  0   1#重新挂载文件系统或重启动系统,使修改生效mount -o remount /

设定与查看ACL(强调一下针对的是文件和用户之间的关系)

getfacl 文件名     //查看acl权限setfacl 选项 文件名     //设定ACL权限的命令选项:-m:设定ACL权限;-x:删除指定的ACL权限;-b:删除所有的ACL权限;(e.g setfacl -b 文件名)-d:设定默认ACL权限;-k:删除默认ACL权限;-R:递归设定ACL权限;#为用户设定ACL权限setfacl -m u:用户名:权限(rwx) 文件名#为用户组设定ACL权限setfacl -m g:组名:权限(rwx) 文件名

最大有效权限mask(使用命令getfacl 文件名显示的结果中倒数第二排会出现mask这个词)mask是用来指定最大有效权限的。如果我给用户赋予了acl权限,是需要和mask的权限“相与”才能得到用户的真正权限。相与是计算机中的术语,皆真方为真,有假便为假。

修改mask值的命令 setfacl -m m:权限(rwx) 文件

Linux中默认ACL权限和递归ACL权限

ACL 目录下的子目录 这就需要递归递归是父目录在设定ACL权限时,所有的子文件和子目录也会拥有相同的ACL权限(这里就出现了acl的一个严重的问题,对目录使用递归权限,子文件本来不想给的权限,结果给了,这就出现了权限溢出)递归只能对目录设置,不能对文件-R 选项e.g:setfacl -m u:lw:rx -R /av不是默认的ACL权限,那么命令执行之后再新建的目录就不会有之前的ACL权限,这里就需要使用*默认的ACL权限*默认ACL权限的作用时如果给父目录设定了默认的ACL权限,那么父目录中所有新建的文件都会继承父目录的ACL权限setfacl -m d:u:用户名:权限(rwx) -R 目录d表示 default  默认
0 0
原创粉丝点击