在说umask的用法之前我们现在了解一下,umask是什么?umask一般是用在你初始创建一个目录或者文件的时候赋予他们的权限


当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情。umask设置了用户创建文件的默认 权限,它与chmod配套使用,chmod设置的是文件权限码。一般在/etc/profile、$ [HOME]/.bash_profile或$[HOME]/.profile中设置umask值。


umask值就是指“Linux文件的默认属性需要减掉的权限”。比如Linux普通文件的最大默认属性是666,目录文件的最大属性是777。但是我们不想要用户在新建立文件时,文件的属性是666或777,那么我们就要设置umask值。Linux系统预置的umask值是022,那么用户在新建立普通文件时,普通文件的属性就是666-022=644,新建立目录文件时,目录文件的属性就是777-022=755。


umask一般是用在你初始创建一个目录或者文件的时候赋予他们的权限。

  这里要说明两点:

  1、针对目录来说x权限代表可以进入该目录,所以说对于这个权限初始赋值是没什么问题的;

  2、针对文件的x的权限代表执行,这个风险太高,所以一般权限初始赋值必须去掉x的;

  [root@www ~]# umask

  0022

  这四个字母代表什么?

  首先说明一点,上面四个数字代表是赋值初始化准备丢弃的权限。(相对应文件来说,x权限就算没说明出来丢弃一样必须默认丢弃)

  第一个0代表suid 丢弃的权限;

  第二个0代表本文件/目录拥有者什么权限都没丢弃(如果是文件,x权限除外,为什么看看上面解释);

  第三个2代表本文件/目录的用户组丢弃了w权限(如果是文件那么它的x权限也丢弃);

  第三个2代表本文件/目录的其他用户能使用的权限只有有r和x(文件除外)。

  综合上面所说如果你新创建一个文件那么它的权限是:-wr-w--w-- 即是:644

  如果你新创建一个目录的话那么它的权限是:dwrxw-xw-x 即是:755

  如果你要修改unask熟悉直接:

  [root@www ~]# umask 002


Logo

更多推荐