umask 默认权限

2023-06-30 13:57:59 3226

1 查看系统的 umask 权限

[root@localhost ~]# umask

0022

#用八进制数值显示 umask

权限

[root@localhost ~]# umask -S

u=rwx,g=rx,o=rx

#用字母表示文件和目录的初始权限

 

2 umask 权限的计算方法

我们需要先了解一下新建文件和目录的默认最大权限。

 对文件来讲,新建文件的默认最大权限是 666,没有执行(x)权限。这是因为执行权限对文件

来讲比较危险,不能在新建文件的时候默认赋予,而必须通过用户手工赋予。

 对目录来讲,新建目录的默认最大权限是 777。这是因为对目录而言,执行(x)权限仅仅代表

进入目录,所以即使建立新文件时直接默认赋予,也没有什么危险。

按照官方的标准算法,umask 默认权限需要使用二进制进行逻辑与和逻辑非联合运算才可以得到

正确的新建文件和目录的默认权限。这种方法既不好计算,也不好理解,超哥并不推荐。

我们在这里还是按照权限字母来讲解 umask 权限的计算方法。我们就按照默认的 umask 值是 022

来分别计算一下新建文件和目录的默认权限吧。

 文件的默认权限最大只能是 666,而 umask 的值是 022

“-rw-rw-rw-”减去 “-----w--w-”等于“-rw-r--r—”

 目录的默认权限最大可以是 777,而 umask 的值是 022

“drwxrwxrwx”减去“d----w--w-”等于“drwx-r-xr-x”

注意:umask 默认权限的计算绝不是数字直接相减。

例如 umask 是 033 呢?

 文件的默认权限最大只能是 666,而 umask 的值是 033

“-rw-rw-rw-”减去“-----wx-wx”等于“-rw-r--r—”

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: