如何知道文件何时添加了 ACL

ls -l 命令将产生如下所示的输出。
请注意权限末尾的 + 号。
这确认文件添加了 ACL。

# ls -l
-rw-r--r-+ 1   root   root  0  Sep  19  14:41  file

删除 FACL

要删除 ACL,请使用带有 -x 选项的 setfacl 命令:

# setfacl -x u:john /tmp/test

上述命令删除文件 /tmp/test 上用户 john 的 ACL。
其他用户/组的 ACL(如果有)不受影响。
要删除与文件关联的所有 ACL,请使用带有 setfacl 的 -b 选项:

# setfacl -b /tmp/test
在RHEL 7中 创建和管理访问控制列表 (ACL)

文件访问控制列表 (FACL - file access control list) 或者简称 ACL 是添加用户/组及其对文件的权限的列表。
尽管默认文件权限可以完美地完成它们的工作,但它不允许我们为同一文件的多个用户或者一组授予权限。

查看 ACL

要显示文件的详细 ACL 信息,请使用 getfacl 命令。
如果仔细观察,用户 sam 和 john 有一些另外的权限(突出显示)。
默认用户/组权限使用“user::permission”和“group::

# getfacl /tmp/test
# file: test
# owner: root
# group: root
user::rw
user:john:rw
user:sam:rwx
group::r-
mask::rwx
other:--

相反,如果我们在“无 ACL”的文件上检查 ACL,则不会显示另外的“user:”行和“mask”行,并且将显示标准文件权限。

# getfacl test
# file: test
# owner: root
# group: root
user::rw
group::r-
other::r-

默认 ACL

通过设置默认 ACL,我们将确定将为目录中创建的所有新项目设置的权限。
但现有文件和子目录的权限保持不变。

要在目录上创建默认 FACL:

# setfacl -m default:u:john:rw /accounts

注意 getfacl 命令中的默认权限:

# getfacl accounts/
# file: accounts/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:user:john:rw
default:group::r-x
default:mask::rwx
default:other::r-x
欢迎 on it road

创建和管理 FACL

setfacl 命令用于在给定文件上设置 ACL。
要授予用户 john 对文件 /tmp/test 的 rw 访问权限:

# setfacl -m u:john:rw /tmp/test

-m 选项告诉 setfacl 修改命令行中提到的文件上的 ACL。
我们可以有一个组来对文件具有特定权限,而不是用户 john:

# setfacl -m g:accounts:rw /tmp/test

也可以使用单个命令设置多个用户和组的 FACL:

# setfacl -m u:john:rw,g:accounts:rwx /tmp/test
日期:2020-09-17 00:12:58 来源:oir作者:oir