Linux umask命令详解,Linux修改文件默认访问权限

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者

作用:umask 命令用来控制「权限掩码」,为新建的文件或目录设置一个「初始权限」

文件/目录创建时的初始权限 = 默认权限 - 权限掩码

一、查看umask值

「查看」当前用户的权限掩码(查看 umask 的值)

umask

在这里插入图片描述

这个四位数的 umask 值中:

  • 第一位的0,表示「特殊权限」,暂时不用理会。
  • 第二位的0,表示「用户权限」,从用户权限减0,也就是权限不变。
  • 第三位的2,表示「用户组权限」,从组权限减2,也就是减掉写(w=2)的权限.
  • 第四位的2,表示「其他用户权限」,从其他用户权限减2,即取消其他用户的写权限。

二、临时修改umask值

umask 命令后面直接跟权限掩码,可以「临时修改」权限掩码,「重启后失效」

umask 0022

在这里插入图片描述

三、永久修改umask值

umask 的配置文件是 /etc/bashrc

vim /etc/bashrc

最后一行的 umask 0077 改成需要修改的值,「重启系统」即可生效。

在这里插入图片描述

四、文件和目录的默认权限

文件默认权限:-rw-rw-rw-
目录默认权限:drwxrwxrwx

我们把 umask 的值设置为0,表示用户权限减0,然后再创建目录,可以看到,目录的默认权限是:drwxrwxrwx

在这里插入图片描述

接下来,我们把 umask 的值设置为0011,表示用户组权限-1,其他用户权限-1,也就是取消用户组和其他用户的执行权限(x=1);
然后再创建目录,可以看到,目录的默认权限变成了:drwxrw-rw-

在这里插入图片描述

五、权限数值对照表

数值 权限 含义
0 无权限
1 –x 执行权限
2 -w- 写权限
3 -wx 写、执行权限
4 r– 只读权限
5 r-x 读、执行权限
6 rw- 读写权限
7 rwx 读、写、执行权限

六、常用umask值及对应权限

umask值 文件权限 目录权限 含义
002 664 775 取消其他用户写权限
006 660 771 取消其他用户读、写权限
022 644 755 取消用户组、其他用户的写权限
027 640 750 取消其他用户读、写权限;取消用户组的写权限

七、注意事项

1) umask 修改值的「格式并不固定」,可以是一位数,也可以是三位数

比如:给1,就是0001

在这里插入图片描述

给001,也是0001

在这里插入图片描述

2)当 umask 的值「不符合实际权限」时,不会报错,而是「向下兼容」

比如:umask值为0022和0033时,文件的默认权限是一样的。

在这里插入图片描述

3)目录的最大默认权限是读、写、执行;但文件的默认最大权限只有读、写;文件的「执行权限」不会在默认权限中赋予,只能用户手动赋予。

猜你喜欢

转载自blog.csdn.net/wangyuxiang946/article/details/127922203