umask 命令概述:登录系统之后创建一个文件或者目录总是有一个默认权限的,这个默认的权限就是umask来处理的。umask设置了用户创建文件和目录的默认权限。



查看本机的umask权限

【转载】  linux中umask命令介绍_javascript





可选项 :

-p:打印当前umask值

-S:显示当前掩码






新建文件和目录方面的知识:

  • 对文件而言,新建文件的默认权限最大是666,没有执行(x)权限,这是因为执行权限对文件来讲比较危险,系统不会随意让你在刚创建文件时就赋予执行文件的权限,想赋予执行的话那就手动用chmod来赋予。
  • 对目录来讲,新建目录的默认权限的最大权限是777,这是因为对于目录而言,执行(x)权限仅仅代表的是进入目录,所以即使建立新文件时直接默认赋予也没有什么危险。







如何计算新建目录和文件的默认权限?这里按照权限字母来讲解umask的计算方法。

1.文件的默权限最大可能是666,而我本机umask值是022(umask值的第一位可以忽略不看)

“-rw-rw-rw-” 减去"-----w–w-" 等于 “-rw-r–r--”

【转载】  linux中umask命令介绍_javascript_02






2.目录的默认权限可以是777,本机的umask的值是022

“drwxrwxrwx” 减去 “d----w–w-” 等于 “drwxr-xr-x”

【转载】  linux中umask命令介绍_创建文件_03







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

例如umask是033

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