zoukankan      html  css  js  c++  java
  • Linux命令之umask

    Linux umask命令

    Linux umask命令指定在建立文件时预设的权限掩码。

    umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。

    语法

    umask [-S][权限掩码]

    参数说明

    -S  以文字的方式来表示权限掩码。

    实例

    查看系统的 umask 权限 
    [root@iZbp143t3oxhfc3ar7jey0Z ~]# umask
    0022
    [root@iZbp143t3oxhfc3ar7jey0Z ~]# umask -S
    u=rwx,g=rx,o=rx

     umask 权限的计算方法
    我们需要先了解一下新建文件和目录的默认最大权限。
    对文件来讲,新建文件的默认最大权限是 666,没有执行( x)权限。这是因为执行权限对文件
    来讲比较危险,不能在新建文件的时候默认赋予,而必须通过用户手工赋予。
    对目录来讲,新建目录的默认最大权限是 777。这是因为对目录而言,执行( x)权限仅仅代表
    进入目录,所以即使建立新文件时直接默认赋予,也没有什么危险。

    按照官方的标准算法, umask 默认权限需要使用二进制进行逻辑与和逻辑非联合运算才可以得到
    正确的新建文件和目录的默认权限。这种方法既不好计算,也不好理解,超哥并不推荐。
    我们在这里还是按照权限字母来讲解 umask 权限的计算方法。 我们就按照默认的 umask 值是 022
    来分别计算一下新建文件和目录的默认权限吧。
    文件的默认权限最大只能是 666, 而 umask 的值是 022
    -rw-rw-rw-”减去 “-----w--w-”等于“-rw-r--r—
    目录的默认权限最大可以是 777, 而 umask 的值是 022
    drwxrwxrwx”减去“d----w--w-”等于“drwx-r-xr-x
    注意: umask 默认权限的计算绝不是数字直接相减。
    例如 umask 033 呢?
    文件的默认权限最大只能是 666,而 umask 的值是 033
    -rw-rw-rw-”减去“-----wx-wx”等于“-rw-r--r—

    [root@iZbp143t3oxhfc3ar7jey0Z ~]# vim /etc/profile
    [root@iZbp143t3oxhfc3ar7jey0Z ~]# source /etc/profile
    [root@iZbp143t3oxhfc3ar7jey0Z ~]# useradd wgr
    [root@iZbp143t3oxhfc3ar7jey0Z ~]# passwd wgr
    Changing password for user wgr.
    New password:
    BAD PASSWORD: The password is shorter than 8 characters
    Retype new password:
    passwd: all authentication tokens updated successfully.
    [root@iZbp143t3oxhfc3ar7jey0Z ~]# su - wgr
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$ ll
    total 0
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$  mkdir test
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$ touch test.txt
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$ ll
    total 4
    drwxr-xr-x 2 wgr wgr 4096 Feb 12 23:01 test
    -rw-r--r-- 1 wgr wgr    0 Feb 12 23:01 test.txt
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$ umask
    0022
    [wgr@iZbp143t3oxhfc3ar7jey0Z ~]$
  • 相关阅读:
    orm操作
    模板语言
    路由
    newlib中printf库函数的实现
    调试问题记录
    GCC部分编译选项解析
    Lauterbach TRACE32使用技巧记录
    ARM32 页表映射过程
    TTBR0与TTBR1
    Camera Sensor基础知识
  • 原文地址:https://www.cnblogs.com/dalianpai/p/12301692.html
Copyright © 2011-2022 走看看