用ls -l查看基础权限结构,stat获取八进制权限值与三类时间戳,getfacl补全ACL细节(含mask和默认规则),三者结合可全面掌握文件权限现状。

直接用 ls -l 查看基础权限,再配合 stat 和 getfacl 补全细节,就能掌握完整的权限现状。
用 ls -l 快速看基本权限结构
这是最常用、最直观的方式:
- 执行
ls -l 文件名或ls -ld 目录名(加-d才能只显示目录自身权限,不列内容) - 输出首字段共 10 个字符:第 1 位是文件类型(
-普通文件、d目录、l软链接等);2–4 位是属主权限,5–7 位是属组权限,8–10 位是其他人权限 - 若末尾带
+(如-rw-rw-r--+),说明该文件/目录启用了 ACL,需进一步用getfacl查看
用 stat 查看权限的数字表示和元数据
当需要八进制权限值(如 644、755)或精确时间戳时,stat 更可靠:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
-
stat 文件路径会显示Access: (0644/-rw-r--r--)这类信息,括号内左边是八进制,右边是符号表示 - 同时列出访问(Access)、修改(Modify)、状态变更(Change)三类时间,比
ls -l的修改时间更全面 - 对排查“明明改了权限却没生效”这类问题很有帮助——可确认权限是否真被写入 inode
用 getfacl 查看 ACL 扩展权限(含默认规则)
只要 ls -l 结尾有 +,就该用它来确认实际生效的细粒度控制:
-
getfacl 文件路径显示所有显式设置的用户/组权限、mask(真正限制权限上限)以及other权限 - 对目录执行时,若输出底部出现
default:开头的行(如default:user:alice:rwx),说明设置了默认 ACL,新创建的文件/子目录将自动继承 - 注意:某条 ACL 条目即使写了
rwx,若mask::r-x,那实际最多只有r-x——getfacl会同时列出二者,方便比对
小技巧:快速定位和验证
权限排查常需聚焦特定对象或确认是否生效:
- 查某个用户是否被赋予 ACL:
getfacl /path | grep "user:用户名" - 递归查看整个目录树的 ACL(比如共享目录):
getfacl -R /shared | less - 验证 ACL 是否真正启用:
ls -l看结尾是否有+;再用getfacl确认mask和各条目是否匹配预期

















