AZ Tools

Unix 文件权限(chmod)

文件

在 unix 用于文件权限的三种表示之间往返:位复选框、八进制(设置 setuid/setgid/sticky 时为 4 位),以及 ls 风格的符号字符串。下方部分给出可直接复制的 chmod 与 find -perm 命令以及人类可读的摘要,因此你能一眼看出 4755 实际授予了什么。常见模式可通过预设行一键设置。

预设
权限位
属主
其他
特殊位
  • chmodchmod 755 <file>
  • find -permfind . -type f -perm 755
  • 含义
    • owner: read + write + execute
    • group: read + execute
    • other: read + execute

符号形式用 s/S 表示 setuid/setgid,t/T 表示 sticky —— 大写表示特殊位已设置但对应的 x 没设置。

使用方法

  1. 选择预设,或粘贴你从教程里复制的八进制模式,或键入符号形式。
  2. 如需要,勾选特殊位(setuid、setgid、sticky)。
  3. 把 chmod 命令复制到你的 shell。

常见问题

为什么目录的「正确」权限是 755?
目录需要执行位才能被遍历 —— 无 x 的目录可以列出其名字但无法 cd 进入。755 给属主完全控制,并允许其他所有人遍历 + 读取。
rws 里的 s 究竟做什么?
在可执行文件上,setuid(user-execute 位上的 s)让文件以属主的有效 UID 运行而非调用者。在目录上,setgid 让新文件继承该目录的组。目录的 sticky(如 /tmp)意味着只有文件的属主才能删除它。

相关工具