Linux 文件权限:从 rwx 到 chmod 的实用清单

阿远
2026-10-26 / 1 评论 / 22 阅读 / 正在检测是否收录...

权限问题常见的症状是“Permission denied”。先别急着给文件加 777:这会把读、写、执行权限开放给所有人,通常超出了真正需要的范围。

先读懂 ls -l

ls -l notes.txt
# -rw-r----- 1 user dev ... notes.txt

第一个字符表示文件类型,后面三组 rwx 依次属于所有者、所属组、其他用户。r 是读,w 是写,x 是执行。普通文件要运行通常需要 x;目录的 x 表示可以进入或访问其中的路径,r 才允许列出目录项。

数字权限怎么记

r=4、w=2、x=1,每组相加即可。640 表示所有者读写、组只读、其他人没有权限;755 常用于需要公开读取和进入的目录。

chmod 640 notes.txt
chmod u+x script.sh
stat -c "%A %a %U:%G %n" notes.txt

第一条设置绝对权限,第二条只给所有者增加执行权限,第三条检查结果。相比反复猜测,修改后立刻用 stat 验证更可靠。

所有者也要检查

如果权限位看起来正确,问题可能是文件归属。先运行 id 和 ls -l 比较当前用户、组与文件所有者。确实需要调整时,在确认目标路径后使用 sudo chown user:group notes.txt。避免对不明确的目录递归执行 chown -R。

练习:创建一个测试文件,依次改为 600、640、644,每次用 stat 记录变化;再新建目录比较有无 x 时的访问差异。

目录权限与 ACL 的补充

删除文件主要取决于父目录的写入与搜索权限,还受 Sticky Bit、ACL 等影响,不是只看文件本身有没有 w。遇到拒绝访问,依次运行 id、namei -l 目标路径、getfacl 目标路径,检查实际用户、每层目录与 ACL mask。SELinux 开启时还要看标签和审计信息。练习用普通用户:root 可能绕过部分权限限制,容易让实验结论失真。

内容复核与修订:2026-10-29。实验示例与本站运行记录分别说明;原始归档日期保留。
2

评论 (1)

取消
  1. 头像
    阿远 作者
    Windows 10 · Google Chrome

    作者补充|练习目录权限时,记得把测试文件放在自己的实验目录里。`chmod 640` 适合展示“所有者可读写、组可读”的含义,实际权限仍要按文件用途决定。

    回复