欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  运维

详解 Linux 文件权限

程序员文章站 2022-04-05 15:39:53
...
Linux 文件权限

在深入了解之前,先来理解一下文件权限的基本信息。【推荐:Linux视频教程

首先创建一个信息的文件

>$ touch new_file
>$ ll new_file
>$ -rw-r--r-- 1 root root 0 4月  23 22:59 new_file

文件 new_file 拥有下面三组权限:

rw- : 文件的属主,登陆用户的权限 r w 分别是读写

r-- : 文件属主的所属组的权限 r 读

r--: 其他用户的权限 r 读

当然还有一个 x 可执行权限这里没有,可以通过 chmod 命令来增加。这个后面再说。我们先来说说文件权限的由来,touch 命令之后的默认权限是如何来的。要知道首先要知道有 umask 的存在。通过 umask 命令可以获取默认值。这个值很有用。

>$ umask
>$ 0022 // 这是我机器上面的值

要了解这个 umask 的是如何工作的,首先要理解一下八进制模式的安全性设置。八进制模式的安全设置先获取这三个 rwx 权限的值,然后将其转换为三位二进制值,用一个八进制值来表示。在这个二进制表示中,每个位置代表一个二进制位。例如唯一读权限 r-- 转换成二进制就是 100, 那么代表的八进制就是 4。

如下表表示的这样:

详解 Linux 文件权限

当了解对应权限以及八进制值之后,看看上面的 new_file 拥有权限是 644。那么这里有点困惑了,这个值是如何得来的呢。 umask 的 0022 有什么意义呢?其实这个值只是个掩码。

他会屏蔽掉不像授予该安全级别的权限。对于文件来说,全权限是 666,减去 umask 的值就是新创建文件的权限。 644 正是我们所期望的那样,默认屏蔽了文件所属组和其他用户 w 权限。这里说明一下文件夹的全权限是 777。如果你想屏蔽更多的权限,可以修改 umask 的值。

>$ umask 026

以上就是详解 Linux 文件权限的详细内容,更多请关注其它相关文章!

相关标签: Linux