• umask 文件默认权限


    参考资料 http://book.51cto.com/art/200709/57189.htm

    umask就是指定当前用户在建立文件或目录时候的属性默认值。

    linux-xdYUnA:~ # umask
    0027
    linux-xdYUnA:~ # umask -S
    u=rwx,g=rx,o=
    linux-xdYUnA:~ # touch abc
    linux-xdYUnA:~ # ll abc
    -rw-r----- 1 root root 0 Mar 19 14:27 abc
    linux-xdYUnA:~ # umask 0022
    linux-xdYUnA:~ # umask
    0022
    linux-xdYUnA:~ # umask -S
    u=rwx,g=rx,o=rx
    linux-xdYUnA:~ # touch abcd
    linux-xdYUnA:~ # ll abcd
    -rw-r--r-- 1 root root 0 Mar 19 14:28 abcd

    在默认权限的属性上,目录与文件是不一样的。由于我们不希望文件具有可执行的权力,默认情况中,文件是没有可执行(x)权限的。因此:
    • 若用户建立为”文件”则默认“没有可执行(x)项目”,即只有rw这两个项目,也就是最大为666分,默认属性如下:
    -rw-rw-rw-
    • 若用户建立为”目录”,则由于x与是否可以进入此目录有关,因此默认为所有权限均开放,即为777分,默认属性如下:
    drwxrwxrwx

    umask指定的是“该默认值需要减掉的权限”。因为r、w、x分别是4、2、1,所以。也就是说,当要去掉能写的权限,就是输入2,而如果要去掉能读的权限,也就是4,那么要去掉读与写的权限,也就是6,而要去掉执行与写入的权限,也就是3。

    因为umask为022,所以user并没有被去掉属性,不过group与others的属性被去掉了2(也就是w这个属性),那么当用户:
    • 建立文件时:(-rw-rw-rw-) – (-----w--w-) ==> -rw-r--r-- 
    • 建立目录时:(drwxrwxrwx) – (d----w--w-) ==> drwxr-xr-x

    默认情况下的umask值是022(可以用umask命令查看),此时你建立的文件默认权限是644(6-0,6-2,6-2),建立的目录的默认权限是755(7-0,7-2,7-2),可以用ls -l验证一下哦 现在应该知道umask的用途了吧,它是为了控制默认权限,不要使默认的文件和目录具有全权而设的。

    默认情况,包括 touch一个文件,echo一个文件等创建的文件。

  • 相关阅读:
    LeetCode 50. Pow(x, n)
    java方法的多态性理解
    向量的相似性度量
    LeetCode 43. Multiply Strings
    java中的字符编码方式
    LeetCode 67. Add Binary
    LeetCode 2. Add Two Numbers
    LeetCode 13. Roman to Integer
    linux-系统启动过程,执行的配置文件
    linux-后台运行程序-nohup
  • 原文地址:https://www.cnblogs.com/xingmuxin/p/8601825.html
Copyright © 2020-2023  润新知