ACL权限

为什么需要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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值