• Linux基础命令—umask


    Linux umask命令

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

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

    语法



    umask [-S][权限掩码]

    umask 默认权限设置为22



    [hx@centos8 ~]$ umask 0022

    那么我们创建一个目录的默认权限是多少呢



    [hx@centos8 ~]$ mkdir -v test mkdir: created directory 'test' [hx@centos8 ~]$ ls -ld test drwxr-xr-x 2 hx hx 6 Jun 17 02:10 test

    可以看到权限为755,那么目录的最大权限就是777

    所以最大权限减去umask值等于得到的权限

    同理文件算一下文件的最大权限



    [hx@centos8 ~]$ touch test/test.txt [hx@centos8 ~]$ ls -ld test/test.txt -rw-r--r-- 1 hx hx 0 Jun 17 02:12 test/test.txt

    umask为022,创建文件的默认权限为:644+022=666,推导文件的最大权限为666

    如果把umask设置为002,创建的目录和文件的默认权限是多少呢?



    [hx@centos8 ~]$ umask 2 [hx@centos8 ~]$ umask 0002 [hx@centos8 ~]$ mkdir test1 [hx@centos8 ~]$ ls -ld test1 drwxrwxr-x 2 hx hx 6 Jun 17 02:22 test1 [hx@centos8 ~]$ touch test1/test1.txt [hx@centos8 ~]$ ls -ld test1/test1.txt -rw-rw-r-- 1 hx hx 0 Jun 17 02:29 test1/test1.txt

    777-002=775

    666-002=664

    值得注意的是,不管umask怎么修改都不会让文件具有可执行的权限!

    常见umask设置
    umask值 目录 文件
    022 755 644
    027 750 640
    002 775 664
    006 771 660
    007 770 660

    PS:umask命令不具有持久性,退出重新登陆后会被重置为022

  • 相关阅读:
    ORA00257 archiver error. 错误的处理方法
    Eclipse快捷键大全
    struts2 globalresults
    oracle创建表空间
    struts2 action中result参数详解
    struts2小程序登录验证
    清理系统垃圾文件 请命名为:*.bat
    网上免费阅读的计算机编程书籍列表
    eclipse+myeclipse+mysql+tomcat配置数据源
    o(∩_∩)o...哈哈 somethingaboutJAVA
  • 原文地址:https://www.cnblogs.com/hxlinux/p/12817417.html
Copyright © 2020-2023  润新知