Skip to content

Linux 文件权限详解

约 892 字大约 3 分钟

2025-06-28

八进制数字表示法是 Linux 中设置文件权限最常用的方法之一,它使用 3-4 位数字来精确控制文件的所有者、组和其他用户的权限。

一、三位数表示法

最常用的三位数权限表示法:

ABC
│││
││└─ 其他用户(Others)权限
│└─── 所属组(Group)权限
└───── 所有者(User)权限

权限数字对应表

数字权限二进制符号表示说明
0---000无权限没有任何权限
1--x001执行仅执行权限
2-w-010仅写入权限
3-wx011写+执行2+1 的组合
4r--100仅读取权限
5r-x101读+执行4+1 的组合
6rw-110读+写4+2 的组合
7rwx111读+写+执行4+2+1 的组合

常见权限组合示例

权限组合符号表示所有者同组用户其他用户常见场景
755rwxr-xr-x读、写、执行读、执行读、执行可执行程序、脚本
644rw-r--r--读、写普通数据文件
700rwx------读、写、执行无权限无权限私有目录/文件

二、四位数权限表示(包含特殊权限)

当需要设置特殊权限时,使用四位数:

DABC
↑│││
│││└─ 其他用户权限
││└─── 所属组权限
│└───── 所有者权限
└────── 特殊权限位

特殊权限数字

数字特殊权限符号表示说明
4SetUIDu+s执行时以所有者身份运行
2SetGIDg+s执行时以组身份运行/目录继承组
1Sticky Bito+t限制目录内文件删除权限

特殊权限示例

  1. 4755 (rwsr-xr-x)

    • SetUID 位设置
    • 典型应用:/usr/bin/passwd
  2. 2755 (rwxr-sr-x)

    • SetGID 位设置
    • 典型应用:共享目录
  3. 1777 (rwxrwxrwt)

    • Sticky Bit 设置
    • 典型应用:/tmp目录

三、权限设置命令

使用chmod命令设置权限:

# 设置普通权限
chmod 755 filename
chmod 644 directory/

# 设置特殊权限
chmod 4755 setuid_program
chmod 1777 /tmp/shared_dir

# 递归设置目录权限
chmod -R 755 directory/

四、权限查看方法

  1. 使用ls -l查看:

    -rwsr-xr-x 1 root root 16384 Jan 1 10:00 special_program
    drwxr-sr-x 2 user group 4096 Jan 1 10:00 shared_dir/
  2. 特殊权限显示位置:

    • SetUID: 所有者执行位显示为s(如rws
    • SetGID: 组执行位显示为s(如r-s
    • Sticky Bit: 其他用户执行位显示为t(如rwt

五、实用权限组合参考

权限值符号表示适用场景
400r--------仅所有者可读的敏感文件
600rw-------所有者可读写的私有文件
644rw-r--r--普通可读文件(web 文件)
755rwxr-xr-x可执行程序/公共目录
711rwx--x--x可执行但内容不可查
750rwxr-x---团队共享的可执行文件
1777rwxrwxrwt公共临时目录(/tmp)
2750rwxr-s---团队协作目录

六、注意事项

  1. 目录必须要有 x 权限才能访问内容,即使有 r 权限
  2. SetUID/SetGID权限可能带来安全风险,需谨慎使用
  3. umask会影响新建文件的默认权限
  4. 符号链接的权限没有实际意义,指向的目标权限才有效
  5. root 用户不受普通权限限制(但受 SELinux 等机制限制)

理解八进制权限表示法是 Linux 系统管理的基础技能,合理设置文件权限是系统安全的重要保障。建议结合umaskchown命令一起使用,实现完整的权限管理体系。

更新日志

2025/8/24 08:17
查看所有更新日志
  • e7112-1