Linux权限掩码详解

2023年 10月 13日 71.3k 0

Linux理论情况下,新建普通文件默认权限是666,新建目录文件默认权限是777,然而新建实际看到的可能是普通文件:664、目录文件:775。

图片[1]-Linux权限掩码详解-不念博客

在Linux中创建文件和目录时,单个用户新建普通文件或目录文件其权限是一样的,控制这个新建权限的叫做权限掩码。

示例:

图片[2]-Linux权限掩码详解-不念博客

分析:

umask命令可以查看权限掩码。0002(第1个零表示这是一个八进制的数)

示例:

图片[3]-Linux权限掩码详解-不念博客

分析:

umask 八进制数,可以修改权限掩码。

示例:

图片[4]-Linux权限掩码详解-不念博客

分析:

umask设置为0000后,新建普通文件权限就为666,新建目录文件权限就为777了。所以想让新建文件初始权限符合实际预期,那么就需要修改权限掩码的值。

示例:

图片[5]-Linux权限掩码详解-不念博客

分析:

最终权限 = 默认权限 & (~umask);

默认权限,普通文件:666(110 110 110),目录文件:777(111 111 111);

权限掩码设置为222(010 010 010),取反就是(101 101 101);

普通文件最终权限 = (110 110 110) & (101 101 101) = (100 100 100) = 0444;

目录文件最终权限 = (111 111 111) & (101 101 101) = (101 101 101) = 0555;

公式验证的结果和新建文件结果是一致的。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论