发布时间:2022-08-29 11:30
关注微信公众号:CodingTechWork,一起学习进步。
我们有没有思考过一个问题,在登录Linux系统后,我们创建的目录或者文件的权限,为什么每次创建都是统一的?我们做以下实验:新建一个用户userA,然后分别创建目录dir01和dir02,文件t1.txt和t2.txt。
[root@linux01 ~]# useradd userA
[root@linux01 ~]# su - userA
[userA@linux01 ~]$ ll
total 0
[userA@linux01 ~]$ mkdir dir01
[userA@linux01 ~]$ mkdir dir02
[userA@linux01 ~]$ touch t1.txt
[userA@linux01 ~]$ touch t2.txt
[userA@linux01 ~]$ ll
total 8
drwxr-x--- 2 userA userA 4096 Mar 27 10:25 dir01
drwxr-x--- 2 userA userA 4096 Mar 27 10:25 dir02
-rw-r----- 1 userA userA 0 Mar 27 10:25 t1.txt
-rw-r----- 1 userA userA 0 Mar 27 10:25 t2.txt
从上述的实验中发现,每次创建目录的权限都是drwxr-x---
,即为750
,文件的权限都是-rw-r-----
即为640
。我们能想到的必定这是个默认权限,那这个默认权限由谁来控制?答案是:umask
。
[userA@linux01 ~]$ umask
0027
是的,我们可以通过umask来改变用户的创建文件和目录的默认权限,Linux是注重安全性的OS,而安全离不开权限的设置,对于创建新的目录和文件设定必要的初始权限是必不可少的,Linux和Windows在权限一个很大的区别就是:Windows中,新建目录和文件是继承上级目录权限;Linux是通过使用umask设置的默认权限给新建的目录和文件赋予初始权限。下面将一起走进umask的学习和使用。
首先,我们要了解的是,Linux文件的最大权限是666,目录的最大权限是777,为何目录要比文件权限大?因为目录需要有执行权(x)才能够进入到目录中。
umask的作用是在用户登录Linux系统环境下,设置用户创建目录和文件的初始化权限。
语法:
umask [-p] [-S] [mode]
-p
:表示完整打印umask内容。-S
:表示以符号形式显示设置。mode
:表示设置权限,mode和chmod的命令格式一样。linux trace 工具,ftrace和它的前端工具trace-cmd(深入了解Linux系统的利器)
Linux进阶 | 万字详解Docker镜像的制作,手把手学会!
uni-app实战之社区交友APP(15)聊天功能开发和后端API部署
35.JavaScript对象和数组的解构赋值基础详解、let陷阱、函数参数解构
ORM框架-VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG】4.6
苹果无线网服务器改什么速度快,iPhone网速慢怎么办?苹果手机如何配置DNS?
[Activiti] UEL 统一表达式语言 (任务节点 Assignee 通过变量获取)
Shiro的使用(六)—SpringBoot整合shiro和Swagger2实现前后端分离