Linux命令大全-umask命令17认证网

正规官方授权
更专业・更权威

Linux命令大全-umask命令

转自:亮哥拾光笔记

一、简介
umask(英文全拼: user file-creation mode mask)命令主要功能是在建立文件时预设的权限掩码。umask经常被叫做权限掩码(或文件掩码),它是由3个八进制的数字组成,将现有存取权限减掉权限掩码后,即可产生创建文件时预设的权限。

二、语法
语法:umask [参数] [权限掩码]参数说明:

-p:输出的权限掩码,可直接作为指令来执行

-S:以符号的方式来查看权限掩码

三、实战
1、查看系统当前权限掩码
[root@CentOS7 ~]# umask0022
也可以使用“-p”参数进行查看。如下:
[root@CentOS7 ~]# umask -pumask 0022

 

输出的结果为“0022”,说明当前系统预设的权限掩码为022,生成的文件或文件夹的权限分别是666或777减去022之后得到的权限。如创建一个test文件咱们看一下test文件权限,是不是666减去022得到的。如下:

[root@CentOS7 ~]# touch test.txt[root@CentOS7 ~]# ls -lrt test.txt-rw-r--r-- 1 root root 0 2月  26 13:37 test.txt
从生成的test.txt文件权限来看是644,其实就是”-rw-r–r–“=”666-022=644″得到的。文件夹也是如此,如下:

[root@CentOS7 ~]# mkdir test[root@CentOS7 ~]# ls -lrtd testdrwxr-xr-x 2 root root 6 2月  26 13:39 test
生成的文件夹权限为755,其实就是”drwxr-xr-x”=”777-022=755″得到的。如果想改系统当前的权限掩码,可以直接在umask命令后面加上对应的3位八进制数字即可。如下要改成002的权限掩码:

[root@CentOS7 ~]# umask 002[root@CentOS7 ~]# umask0002
改完之后,当前用户下再创建对应的文件或文件夹,它们的权限就分别变成了”666-002=664″和”777-002=775″。这种方法只会临时更改相应的权限掩码,当系统重启后就会失效,且恢复到默认的权限掩码。

如果想永久生效,可以使用以下2种方法来更改:

1、修改/etc/bashrc中的默认配置;

2、在对应用户的环境变量中添加配置;

个人建议在对应用户的环境变量中添加配置,因为这样只会更改当前用户默认的权限掩码。如果把/etc/bashrc中的权限掩码进行更改的话,此时系统全局生效,创建文件或文件夹时,会造成一些权限的提权,长期使用有可能会造成不可遇判的问题发生。

虽说在/etc/bashrc进行更改时,权限掩码会全局生效。不过有时在实际工作中,会让在/etc/bashrc中进行更改(如定制的系统),此时可以根据当时的实际情况进行全局调整即可。

2、以符号形式查看系统当前权限掩码

[root@CentOS7 ~]# umask -Su=rwx,g=rx,o=rx

想了解更多干货,可通过下方扫码关注

可扫码添加上智启元官方客服微信👇

未经允许不得转载:17认证网 » Linux命令大全-umask命令
分享到:0

评论已关闭。

400-663-6632
咨询老师
咨询老师
咨询老师