在Linux中,chmod
的数字模式(也称为八进制模式)是通过三位或四位八进制数字来设置文件或目录的权限。每位数字代表不同的权限组,权限由三个二进制位(rwx)组合而成,转换为对应的八进制数字。
二进制 | 八进制 | 权限 |
---|---|---|
000 | 0 | 无权限 |
001 | 1 | 执行 (x) |
010 | 2 | 写入 (w) |
011 | 3 | 写入+执行 (wx) |
100 | 4 | 读取 (r) |
101 | 5 | 读取+执行 (rx) |
110 | 6 | 读取+写入 (rw) |
111 | 7 | 全部权限 (rwx) |
4
:SUID(仅对文件生效)2
:SGID(对文件/目录生效)1
:Sticky bit(通常用于目录,如/tmp
)基本权限设置
chmod 755 file.txt
7
(所有者): rwx
(4+2+1)5
(所属组): r-x
(4+0+1)5
(其他用户): r-x
(4+0+1)限制性权限
chmod 600 private.key
rw-------
)目录权限(允许遍历)
chmod 711 mydir
rwx
--x
(可进入目录但不可查看内容)设置特殊权限
chmod 4755 suid_program # 设置SUID
chmod 1777 /tmp # 设置Sticky bit
x
权限表示"可进入/遍历",无x
则无法cd
或访问目录内文件。ls -l
可查看当前权限,例如:
-rwxr-xr-x 1 user group 0 Jan 1 10:00 file.txt
对应数字模式为755
。添加-R
参数可递归修改目录及其内容:
chmod -R 755 /path/to/dir
通过数字模式可以快速精确地设置权限,适合脚本或批量操作。如需更直观的方式,也可使用符号模式(如chmod u+x
)。