Linux 权限速查

Linux 文件权限用 r(读)、w(写)、x(执行)三种权限分别授予所有者、所属组和其他人,chmod 的数字写法把每组换算成 0~7 的一位八进制,如 755 即 rwxr-xr-x。Linux 权限速查工具可在数字、rwx 与 ls -l 输出之间互转,逐位解释文件和目录上的含义,推演 u+x 这类符号模式,并检查 777 等危险设置,全部在浏览器本地完成。

示例:
对象:
644
符号
rw-r--r--
ls -l
-rw-r--r--
四位数字
0644
规范符号
u=rw,g=r,o=r

勾选权限

对象读 r写 w执行 x合计
所有者 u6
所属组 g4
其他人 o4
特殊位0

逐位解释(文件)

  • rw- 6 · 所有者:读、写——可以查看内容;修改内容(删除文件取决于所在目录的权限)
  • r-- 4 · 所属组:读——可以查看内容
  • r-- 4 · 其他人:读——可以查看内容

安全体检

没有发现问题。

常用权限

符号模式推演(按 GNU chmod 规则)

省略 u/g/o/a 时(如 +w、=rwx)会被 umask 过滤;大写 X 只在目录或已有执行位时才加 x。

umask 默认权限

  • 新建文件:644 rw-r--r--
  • 新建目录:755 rwxr-xr-x
  • 写法:umask 0022,umask -S 显示 u=rwx,g=rx,o=rx;长期生效写进 ~/.bashrc

生成 chmod 命令

  • 数字写法
    chmod 644 file.txt
  • 符号写法
    chmod u=rw,g=r,o=r file.txt

命令只在这里拼出来供你复制,页面不会执行任何命令。

如何使用Linux 权限速查

1

在输入框里填 chmod 数字(644、0755、4755)、9 位 rwx 符号(rwxr-xr-x),或直接粘贴 ls -l 的整行输出、stat 的 Access 行、整条 chmod 命令,工具自动识别并给出四位与三位数字、rwx 符号、ls -l 风格串和 u=rwx,g=rx,o=rx 规范写法。

2

在「勾选权限」网格里点所有者、所属组、其他人的读 4、写 2、执行 1,以及 SUID 4000、SGID 2000、Sticky 1000,输入框与结果会立即变成对应数字。

3

切换「文件 / 目录」看同一组权限在两种对象上的不同含义;安全体检会用危险、注意、说明三级指出 777、其他人可写、大写 S/T 等问题,点「改成建议值」即可替换。

4

在「符号模式推演」里写 u+x、go-w、a+rX 这类表达式,按 GNU chmod 规则逐子句列出结果,并标出被 umask 过滤的位、目录保留的 setgid 与大写 X 是否生效。

5

填好路径、按需勾选递归,复制生成的 chmod 命令;目录递归时还会给出 find 分开设权与 chmod -R u=rwX 两种更安全的写法。

关于Linux 权限速查的常见问题

Linux 权限速查怎么用?能直接粘贴 ls -l 的结果吗
能。Linux 权限速查的输入框认识六种写法:chmod 数字(755、0644、4755、00755)、9 位符号(rwxr-xr-x)、带类型字符的 10 位串(-rw-r--r--、drwxrwsr-x.)、ls -l 的整行输出、stat 命令的 Access: (0644/-rw-r--r--) 行,以及整条 chmod 命令(如 sudo chmod -R 775 /var/www)。粘贴 ls -l 整行时会自动取出第一列权限串,并按首字符把对象切成文件或目录;一次粘贴多行 ls -l 输出会进入批量表,逐行给出数字与风险标记,total 行自动跳过。
chmod 755 和 644 分别是什么权限
chmod 755 是 rwxr-xr-x:所有者可读、写、执行,所属组和其他人可读和执行,常用于目录和脚本。chmod 644 是 rw-r--r--:所有者可读写,其他人只读,是网页、配置文件等普通文件的标准权限。区别就在执行位 x:文件有 x 才能当程序运行,目录有 x 才能进入,所以目录一般用 755,普通文件用 644。三位数字从左到右依次对应所有者、所属组、其他人,每位是读 4、写 2、执行 1 相加,7=4+2+1,5=4+1,4 就是只读。
chmod 777 为什么不安全,该改成多少
chmod 777 让系统上任何账号都能读、写、执行:对文件来说任何人都能改内容,被植入恶意代码的网站往往就是因为上传目录或脚本设成了 777;对目录来说任何人都能删除、改名别人的文件。一般改法是:目录 755、普通文件 644、脚本 755、只给自己用的私密文件 600。确实需要多人共同写入的目录,用 1777(带 sticky 位,人人能建但只能删自己的,/tmp 就是这样)或 2775 配合同一用户组。本工具对 777 会给出危险级提示和一键改成建议值。
SSH 私钥权限应该设成 chmod 600 还是 400
两个都可以,OpenSSH 只要求私钥不能被所有者以外的人读到:600(rw-------)和 400(r--------)都满足,权限过宽时 ssh 会报 UNPROTECTED PRIVATE KEY FILE 并拒绝使用。600 更常见,因为所有者以后还能改写或替换它;400 多一层防误改。~/.ssh 目录本身用 700,authorized_keys 用 600 或 644,公钥 id_rsa.pub 可以是 644。在本工具点「常用权限」里的 600、700 可以直接看到对应的 rwx 与命令。
chmod 里的 s 和 t 是什么权限,大写 S 是什么意思
s 和 t 是特殊权限位。所有者位置的 s 是 setuid(4000),程序运行时以文件所有者身份执行,如 passwd;所属组位置的 s 是 setgid(2000),用在目录上可让新文件继承目录的所属组;其他人位置的 t 是 sticky(1000),用在 /tmp 这类目录上,让人只能删自己的文件。小写 s/t 表示该组同时有执行权限,大写 S/T 表示特殊位已设置但没有执行权限,例如 4644 显示为 rwSr--r--,这通常是设错了。chmod 4755 得到 rwsr-xr-x,chmod 1777 得到 rwxrwxrwt。
chmod u+x 和 chmod +x 有什么区别
chmod u+x 只给所有者加执行权限;chmod +x 省略了 u/g/o/a,表示「所有人,但要扣掉 umask」。umask 是常见的 022 时,+x 给三组都加上执行(因为 022 不屏蔽 x),效果与 a+x 相同;但 chmod +w 只会给所有者加写,所属组和其他人的 w 被 umask 过滤掉了,chmod =rwx 得到的是 755 而不是 777。想不受 umask 影响就明确写 a+x、a+w。本工具的符号模式推演会逐子句标出哪些位被 umask 过滤。
umask 022 时新建文件和目录的默认权限是多少
umask 022 时新建文件默认是 644(rw-r--r--),新建目录默认是 755(rwxr-xr-x)。算法是文件从 666、目录从 777 出发,去掉 umask 里为 1 的位;文件起点没有执行位,所以新建文件永远不会自动可执行。umask 002 时是 664 / 775,适合团队共享;umask 077 时是 600 / 700,只有自己能访问。在本工具的 umask 区输入 022 或 u=rwx,g=rx,o=rx 这样的符号写法都能算出结果。
Linux 目录为什么要有 x 执行权限才能进入
目录的三种权限含义与文件不同:r 是列出里面的文件名,w 是新建、删除、重命名其中的文件,x 是进入目录并访问里面的文件。没有 x 就无法 cd 进去,也无法读取其中任何文件,哪怕那个文件本身是 644;只有 r 没有 x 时能看到文件名但看不到属性。所以目录几乎总是 r 和 x 一起给(755、750、700),而 w 没有 x 也不生效。反过来,只有 x 没有 r(如家目录 711)表示能按已知文件名访问但列不出目录内容。
chmod -R 755 为什么会把文件也变成可执行
chmod -R 755 会把同一个数字套到目录下的每一项,目录需要 x 才能进入,但普通文件得到 x 就变成了可执行,网站代码、图片、文本都带上执行位既不必要也不安全。推荐两种写法:一是用 find 分开设权,find 路径 -type d -exec chmod 755 {} + 与 find 路径 -type f -exec chmod 644 {} +;二是一条 chmod -R u=rwX,go=rX 路径,大写 X 只给目录和本来就可执行的文件加 x。本工具勾选「递归」并选目录后会把三种命令都生成出来;权限含 SGID、Sticky 等特殊位时大写 X 写法会丢掉它们,此时只给 find 分开设权。
chmod 权限速查会上传数据吗?手机上能用吗
不会上传。Linux 权限速查的解析、推演、体检和命令生成都是浏览器里的位运算与字符串处理,粘贴的 ls -l 输出、路径和命令不会离开你的设备,也不会写进本地存储(只记住你选的文件/目录与 umask 偏好);页面只展示和复制命令,不会执行任何命令。手机浏览器打开即可使用,网格、按钮都按触屏尺寸设计。另外,macOS 的 chmod 是 BSD 版,常见写法一致,目录特殊位保留等细节以 GNU/Linux 为准。

Linux 权限速查的功能特点

  • chmod 数字 ↔ rwx 符号 ↔ ls -l 串三向互转,也认 stat 输出与整条 chmod 命令
  • 勾选网格实时出数字,含 setuid、setgid、sticky bit 三个特殊位
  • 同一权限按文件与目录分开解释,说清 chmod 数字含义
  • 符号模式(chmod u+x、go-w、a+rX)按 GNU 规则逐步推演,标出 umask 过滤与大写 X
  • 安全体检:777、其他人可写、大写 S/T、目录有 r 无 x 等一眼可见
  • chmod 与 find 命令一键复制,路径自动加引号,chmod -R 给出更安全的写法
  • 🟢 浏览器端 · 数据不上传,可以当作离线的 chmod 在线工具或「chmod 计算器」使用

Linux 权限数字怎么算:0~7 对照表

每一位数字是读 4、写 2、执行 1 的和,三位数字依次给所有者、所属组、其他人,例如 rwxr-xr-x 是 7、5、5 即 755,-rw-r--r-- 是 644。第四位(放在最前面)是特殊位:setuid 4、setgid 2、sticky 1。八进制原理可以在 进制转换里验证。

chmod 单个数字对照:八进制、二进制、rwx 权限与含义
数字二进制rwx含义
0000---无任何权限
1001--x仅执行
2010-w-仅写
3011-wx写 + 执行
4100r--仅读
5101r-x读 + 执行
6110rw-读 + 写
7111rwx读 + 写 + 执行

常用 chmod 权限对照表

常用 chmod 权限:数字、rwx 符号与适用场景
数字rwx适用场景
chmod 644rw-r--r--网页、配置等普通文件
chmod 755rwxr-xr-x目录与可执行脚本
chmod 600rw-------SSH 私钥等私密文件
chmod 700rwx------~/.ssh 等私有目录
chmod 400r--------只读密钥(防误改)
chmod 640rw-r-----组内可读的配置文件
chmod 750rwxr-x---组内可进入的目录
chmod 2775rwxrwsr-x团队共享目录(继承组)
chmod 1777rwxrwxrwt/tmp 式公共目录
chmod 4755rwsr-xr-xsetuid 程序(如 passwd)
chmod 444r--r--r--所有人只读
chmod 777rwxrwxrwx所有人可读写执行(危险),仅临时排查用

省略 u/g/o 的 chmod +w 会被 umask 过滤

很多教程说 chmod +x 等于 chmod a+x,这只在 umask 不屏蔽 x 时成立。GNU chmod 规定:省略 who 时按「所有人,扣掉 umask」处理。下表以常见的 umask 022 实测推演:

umask 022 下省略 who 与写 a 的对照
命令原权限结果说明
chmod +w644644只有所有者得到写权限:所属组与其他人的 w 被 umask 022 过滤
chmod a+w644666写了 a 就不受 umask 影响,三组都加写
chmod +x644755x 不在 umask 022 里,三组都加上执行
chmod =rwx000755省略 who 的 = 同样被过滤,得不到 777
chmod a=rwx000777明确写 a 才是 777

GNU chmod 对目录用 755 不会清掉 setgid

团队共享目录常设成 2775,之后有人执行 chmod 755 想「改回普通权限」,结果 setgid 还在。这是 GNU coreutils 的有意设计:对目录使用不足五位的数字或不提 s 的符号写法时,保留已有的 setuid / setgid。

对 setgid 目录执行不同 chmod 的结果
命令原权限结果说明
chmod 755目录 27752755setgid 被保留(数字没提到它)
chmod 00755目录 2775755五位数字明确清掉特殊位
chmod g-s目录 2775775符号写法只去掉 setgid
chmod u=rwx,g=rx,o=rx目录 27752755不提 s 时同样保留
chmod 755文件 2775755普通文件没有保留规则,按数字覆盖

chmod -R 的三种写法对照

递归设权:chmod -R 755、find 分开设、chmod -R u=rwX,go=rX 的结果
写法目录结果普通文件结果评价
chmod -R 755 dir755755普通文件全被加上执行位,不推荐
find dir -type d -exec chmod 755 {} + 与 find dir -type f -exec chmod 644 {} +755644最清楚:目录与文件分开设权
chmod -R u=rwX,go=rX dir755644(已可执行的仍为 755)一条命令搞定,大写 X 只给目录和本来就可执行的文件加 x