linux umask使用

1、 umask

Linux umask命令指定在建立文件时预设的权限掩码。umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限,umask设置的是权限的“补码”,而我们常用chmod设置的是文件权限码。

2、权限计算

  • 对于目录,直接使用777-umask即可,就得到了最终结果。
  • 对于文件,先使用666-umask。
    • 如果对应位上为偶数:最终权限就是这个偶数值。
    • 如果上面的对应为上有奇数,就对应位+1。

上面的这个方法计算是非常方便的, 为何得到奇数要+1呢。

文件的最大权限是666,都是偶数,你得到奇数,说明你的umask有奇数啊,读为4,写为2,都是偶数,说明你有执行权限的。

例如,以umask=023为例,在计算其他用户权限的时候6-3=3 ,6是读写,3是写和执行,其实应该是读写权限减去读权限的得到写权限的,相当于我们多减去了一个执行权限。所以结果加1。

posted @ 2020-08-29 14:55  r1-12king  阅读(247)  评论(0编辑  收藏  举报