A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
-bash: getfacl: getfacland not found #Debian apt-get install acl #Ubuntu apt-get install acl #Alpine apk add acl #Arch Linux pacman -S acl #Kali Linux apt-get install acl #CentOS yum install acl #Fedora dnf install acl #OS X brew install acl #Raspbian apt-get install acl #Docker docker run cmd.cat/getfacl getfacl
对于每个文件,getfacl 都会显示文件名,所有者,组和访问控制列表(ACL)。 如果目录具有默认 ACL,则 getfacl 还将显示默认 ACL。 非目录不能具有默认 ACL。
如果在不支持 ACL 的文件系统上使用 getfacl,则 getfacl 将显示由传统文件模式权限位定义的访问权限。
getfacl 的输出格式如下:
1: # file: somedir/ 2: # owner: lisa 3: # group: staff 4: user::rwx 5: user:joe:rwx #effective:r-x 6: group::rwx #effective:r-x 7: group:cool:r-x 8: mask:r-x 9: other:r-x 10: default:user::rwx 11: default:user:joe:rwx #effective:r-x 12: default:group::r-x 13: default:mask:r-x 14: default:other:---
第 4、6 和 9 行对应于文件模式权限位的用户,组和其他字段。这三个称为基本 ACL 条目。第 5 行和第 7 行分别命名为用户和组名。第 8 行是有效的权限掩码。此项限制了授予所有组和命名用户的有效权限。 (文件所有者和其他权限不受有效权限掩码的影响;所有其他条目均受此影响。)第 10 到 14 行显示与此目录关联的默认 ACL。目录可能具有默认的 ACL。常规文件永远不会具有默认 ACL。
getfacl 的默认行为是显示 ACL 和默认 ACL,并在条目的权限与有效权限不同的行中包含有效权限注释。
如果输出到终端,则有效权限注释将与列 40 对齐。否则,将使用单个制表符将ACL条目和有效权限注释分隔开。
多个文件的 ACL 列表由空行分隔。 getfacl 的输出也可以用作 setfacl 的输入。
对文件具有搜索访问权限的进程(即具有对文件包含目录的读访问权限的进程)也被授予对文件 ACL 的读访问权限。 这类似于访问文件模式所需的权限。
getfacl [-dRLPvh] file ... getfacl [-dRLPvh] -
--access 显示文件访问控制列表。 -d, --default 显示默认的访问控制列表。 --omit-header 不要显示注释标题(每个文件输出的前三行)。 --all-effective 打印所有有效的权限注释,即使与ACL条目定义的权限相同。 --no-effective 不要打印有效的权利注释。 --skip-base 跳过仅具有基本ACL条目(所有者,组,其他)的文件。 -R, --recursive 递归列出所有文件和目录的ACL。 -L, --logical “逻辑行走”(遵循符号链接)。 默认行为是遵循符号链接参数,并跳过子目录中遇到的符号链接。 -P, --physical “物理漫游”(跳过所有符号链接)。 这也会跳过符号链接参数。 --tabular 使用替代的表格输出格式。 ACL和默认ACL并排显示。 由于ACL掩码条目而无效的权限以大写形式显示。 ACL_USER_OBJ和ACL_GROUP_OBJ条目的条目标签名称也以大写字母显示,这有助于发现这些条目。 --absolute-names 请勿去除前导斜杠字符('/')。 默认行为是删除前导斜杠字符。 --version 打印getfacl的版本并退出。 --help 打印帮助以解释命令行选项。 -- 命令行选项的结尾。 所有其余参数都解释为文件名,即使它们以破折号开头。 - 如果文件名参数是单个破折号,则getfacl从标准输入中读取文件列表。
文件:指定要查看 ACL 的文件。
如果定义了环境变量 POSIXLY_CORRECT
,则 getfacl 的默认行为将通过以下方式更改:除非另有说明,否则仅打印 ACL。 仅在给出 -d 选项的情况下才打印默认 ACL。 如果未提供命令行参数,则getfacl的行为就像被调用为“ getfacl-”一样。
显示文件 report_edu_202005261401.log
的访问控制列表:
$ getfacl report_edu_202005261401.log # file: report_edu_202005261401.log # owner: nginx # group: nginx user::rw- group::r-- other::r--
查看 getfacl
版本:
$ getfacl --version getfacl 2.2.51