Skip to content

Linux 权限

字数
765 字
阅读时间
4 分钟

说明

-使用 ls -l 命令的时候经常会看到这样的结果(ls 命令参考 ls 列出文件):

shell
权限        有多少文件链接到该目录 用户  用户组 大小  最后修改时间  标题
drwxrw-rw- 26                  neko:whell 2784 00:00       test

权限位(bit)表示

这个列表中包含了权限的信息,一般权限的结构如下:

含义

d 表示目录,rwx 分别是读取(值为 1),写入(值为 2),执行(值为 3) d 后面跟着 9 个字符,权限中,这 9 个字符三个为一组,第一组指定的是 用户权限 ,第二组指定的是 组权限 ,第三组指定的是 其他(所有人)的权限 。 比如在此处,

  1. d 说明该是一个目录,目录名称为 test
  2. 第一组 rwx 说明只要是 neko 用户,可以在该目录下进行读取、写入、执行操作
  3. 第二组 rw- 说明只要是 wheel 组的人,可以在该目录下进行读取、写入操作
  4. 第三组 rw- 说明对于并非是用户 neko 或是 wheel 用户组的人,都可以进行读取、写入的操作

总结

综上所述:

  1. 1、4、7 位表示读权限,如果用 r 字符表示,则有读权限,如果用 - 字符表示,则没有读权限;
  2. 2、5、8 位表示写权限,如果用 w 字符表示,则有写权限,如果用 - 字符表示没有写权限;
  3. 3、6、9 位表示可执行权限,如果用 x 字符表,则有执行权限,如果用 - 字符表示,则没有执行权限

权限八进制表示

想要计算为常见的 700644 格式也十分简单: 权限的数字形式有三位,第一位对应第一组,第二位对应第二组,以此类推...

含义

每个权限类型对应的数字值为:

rwx-
4210

我们只需要把权限类型加起来就可以得到最终结果。

示例

比如 drwxrw-rw-,省略第一个 d,剩下的权限三个字符为一组,分成三组:

  1. 第一组 rwx,分别是 4,2,1,相加之后得到 7,第一位为 7
  2. 第二组 rw-,分别是 4,2,0,相加之后得到 6,第二位为 6
  3. 第三组 rw-,分别是 4,2,0,相加之后得到 6,第三位为 6

于是 rwxrw-rw- 也可以表示为 766。

速查表

八进制对应的权限位表示二进制
7读 + 写 + 执行rwx111
6读 + 写rw-110
5读 + 执行r-x101
4只读r--100
3写 + 执行-wx011
2只写-w-010
1只执行--x001
0---000

贡献者

文件历史

撰写