Linux 访问控制列表 (ACL) 简介

┌─[root@parrot]─[/home/jtz/Desktop]
└──╼ #ls -al | grep Temp
drwxrwx---+  2 jtz  jtz    4096 12-р сар 16 19:57 Temp

查看当前ACL

┌─[root@parrot]─[/home/jtz/Desktop]
└──╼ #getfacl Temp/
# file: Temp/
# owner: jtz
# group: jtz
user::rwx
group::rwx
other::---

这个目录并没有 ACL 因为列出的唯一权限是针对用户、组和其他人

设置访问控制列表

# 语法
setfacl [option] [action/specification] file
# -m 修改
# -x 删除
# -d 默认值
# action/specification : 是指用户和组,后跟我们要设置的权限
# 在设置组 ACL 时需要在组名前加 g: (eg: g:jtz:rwx) 对于用户将 g 改为 u 即可,不过 u 为默认

现在我们设置一个默认 ACL

现在在我们当前组添加一个用户 Fred

我们让 fred 在 Temp 目录中创建一个文件

现在我们创建第三个用户 Kenny ,使用该用户尝试在 Temp 中创建一个文件

现在我们创建 Kenny 自己的文件夹,赋予他所有权,让 jtz 组成为组所有者,以便 jtz 组中其他人可以查看其中内容

现在 Kenny 文件夹归 jtz 组所有,这个组的所有人都可以将文件放在那里,但是如果我们r让 Kenny 成为首席审计师并对 Fred 保密

如果我们不让所有人查看 Kenny 文件,应该怎么设置

参考文章

最后更新于

这有帮助吗?