关于默认权限与umask值

用户创建文件/目录的时候,默认的权限是由umask的值来决定的,默认权限是相对比较安全的权限

在/etc/profile/中,我们可以看到:

if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
    umask 002
else
    umask 022


注:id -gn:即gid对应的组名
      id -un:即uid对应的用户名

即当uid>199且用户名与其对应的组名相同时,umask为002,否则为022

值得注意的一点是,/etc/login.defs中管理者家目录的默认权限:077

而umask值得不同,将导致对应的默认权限不一样:

  文件默认权限 目录默认权限
umask=0002 664(rw-rw-r--) 775(rwxrwxr-x)
umask=0022 644(rw-r--r--) 755(rwxr-xr-x)

umask的计算:

文件:默认权限=默认最大权限-umask(umask有奇数位时,在结果的unmask奇数对应权限位+1)

目录:默认权限=默认最大权限-umask

扫描二维码关注公众号,回复: 40522 查看本文章
默认最大权限 umask值 m默认权限
创建文件(umask全为偶数位) 666 022 644
创建文件(umask存在奇数位) 666 123

666-123=543

5+1-->6

4不变

3+1-->4

结果为644

创建目录 777 022 755

猜你喜欢

转载自www.cnblogs.com/xqr2018/p/8906215.html