使用ACL控制对文件的访问

  1. 当文件仅由单个所有者和指定的一组人使用时,标准linux文件权限即可以满足要求。有些要求多个指定的用户和组以不同的文件权限集来访问文件,访问控制列表ACL提供这一功能。

  1. 借助ACL,可以使用与常规文件权限相同的权限标志(读取、写入、执行)向由用户名、组名、UID或GID标识的多个用户和组授予权限。除了文件所有者和文件的组从属关系之外,这些额外的用户和组分别被称为指定用户和指定组,因为它们不是在长列表中指定的,而是在ACL中指定的。

  1. 文件系统需挂载已启用ACL支持。XFS文件系统内置由ACL支持。要启用文件系统ACL支持,对mount命令或在/etc/fstab配置文件的文件系统条目中使用ACL选项。

  1. ls -l命令仅输出最少的ACL设置详细信息

10字符权限字符串末尾的加号(+)表示该文件上存在带有若干条目的扩展ACL结构。

  1. 使用chmod更改具有ACL的文件的组权限,不会更改组所有者权限,而是更改ACL掩码。如果目的是更新文件的组所有者权限,需使用setfacl -m g::perms file。

  1. 显示文件上的ACL设置,使用getfacl file命令。

  1. 显示目录上的ACL设置,使用getfacl directory命令。

  1. ACL掩码定义可授予指定用户、组所有者和指定组的最大权限,它不限制文件所有者或其他用户的权限。使用getfacl查看掩码,通过setfacl显示掩码。如果未显式设置,系统会自动计算并添加掩码,也可以从父目录默认掩码设置中继承掩码。

  1. 使用setfacl添加、修改或删除文件和目录的标准ACL。-m或-M都是“修改”选项。

  1. 添加或修改用户ACL或指定用户ACL,如图:

如果name留空,则它适用于文件所有者,否则,name可以是用户名或UID值。

ACL文件所有者和标准文件所有者权限同等,使用文件所有者权限中的chmod等同于使用文件所有者权限中的setfacl。chmod对指定用户没有影响。

  1. 添加或修改组ACL或指定组ACL,如图:

如果name留空,适合于组所有者。或指定指定组的组名或GID值。

chmod对于具有ACL设置的文件,对任何组权限都没有影响,但会更新ACL掩码。

  1. 添加或修改其他ACL,如图:

其他ACL仅接受权限设置。其他ACL的典型权限设置为:不具有任何权限,使用短划线(-)进行设置。

ACL其他权限及标准其他权限同等,因此使用其他权限中的chmod等同于使用其他权限中的setfacl。

  1. 默认情况下,每当修改或删除受影响的ACL设置(指定用户、组所有者或指定组)时,系统都会重新计算ACL掩码,进而可能重新设置上一个明确的掩码设置。

  1. 为避免重新计算掩码,使用-n,或者将掩码设置(-m m::perms)包含会在修改受掩码影响的ACL设置的任何setfacl操作中。

  1. 删除ACL:-x

  1. 目录本身仍然需要具备标准ACL才能进行访问权限控制,因为默认ACL不会对目录实施访问权限控制;仅提供ACL权限继承支持。

  1. 用于为各个ACL类型添加默认ACL的setfacl命令与用于标准ACL的命令完全相同,以d:开头,或者,在命令行使用-d选项。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值