我们在创建文件或目录的时候,通常都会有起始的权限,比如目录在创建的时候就有x权限,而且所有同类型文件的起始权限都是相同的
功能:
- 查看或修改文件掩码
- 新建文件夹默认权限=0666
- 新建目录默认权限=0777
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask
格式:umask 权限值
说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002
在创建文件的时候,要从起始权限中,过滤掉(不是简单的减法)在umask中出现的权限
最终权限 = 起始权限 & (~umask)
&:只有对应的两个二进位都为1时,结果位才为1
- 创建的普通文件,起始权限是0666,去掉x的
- 创建的目录文件,起始权限是0777,包含x的
可以通过umask 权限值来修改,修改之后创建文件的起始权限也会不一样