zoukankan      html  css  js  c++  java
  • umask默认权限分配

    umask默认权限分配的命令

     

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

     

    umask是通过八进制的数值来定义用户创建文件或目录的默认权限。

    umask数值表示的禁止的权限。具体的细节,文件和目录有所不同。

     

    [root@oldboy test]# mkdir a

    [root@oldboy test]# touch b

    [root@oldboy test]# ll -t

    总用量 4

    -rw-r--r--. 1 root root    0 3  27 14:19 b

    drwxr-xr-x. 2 root root 4096 327 14:19 a

    当我们创建一个目录或者文件的时候,目录默认的权限为755,文件是644。那么我需要改变这个默认权限就需要设置umask

     [root@oldboy /]# umask  #临时设置

    0022

     

    [root@oldboy /]# sed -n '65,69p' /etc/bashrc  #永久设置

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

           umask 002

        else

           umask 022

    fi

     

     

    如何通过umask计算默认权限。

     

    创建目录默认的最大权限为777,文件的默认权限为666.

    然后减去umask值就可以了。(umask的第一位是特殊权限的,后三位我们需要计算的,当计算文件的默认权限的时候,因为文件默认就没有X权限,所以减umask值的时候遇到奇数,减去的时候少减一个,比如033减去的时候减022

     





  • 相关阅读:
    SQL Server 内存中OLTP内部机制概述(四)
    SQL Server 内存中OLTP内部机制概述(三)
    SQL Server 内存中OLTP内部机制概述(二)
    SQL Server 内存中OLTP内部机制概述(一)
    用例图——远程网络教学系统
    jsp动作标签
    JavaBean
    JSP的内置对象——session
    JSP内置对象——response
    设计一个简单的网上答题及评测系统
  • 原文地址:https://www.cnblogs.com/yangliheng/p/5691874.html
Copyright © 2011-2022 走看看