linux命令 umask详解
umask权限掩码
- 控制系统文件和目录默认权限。
[root@l /]# umask
0022
[root@l /]# touch 1.txt
[root@l /]# ls -l 1.txt
-rw-r--r-- 1 root root 0 Dec 26 13:19 1.txt
针对文件来说:默认权限计算方法(减法)如果对linux文件权限基础不了解可以看linux 文件权限详解这篇文章,有详细讲解
6 - 0 | 6 - 2 | 6 - 2 |
---|---|---|
6 | 4 | 4 |
644
大多数情况这就是系统的文件和目录的默认权限,但是有例外,当权限掩码存在奇数位,奇数位加1
例子:
[root@l /]# umask 021
[root@l /]# umask
0021
[root@l /]# touch 2.txt
[root@l /]# ls -l 2.txt
-rw-r--rw- 1 root root 0 Dec 26 13:20 2.txt
计算方法:
6 - 0 | 6 - 2 | (6 - 1) |
---|---|---|
6 | 4 | 5(奇数位+1) |
6 | 4 | 6 |
646 文件目录默认权限) |
文件权限结论
- 权限从666开始计算。
- 如果偶数,正常做减法
- 如果是奇数,奇数位加一。
针对目录默认权限。
- 权限从777开始计算
- 和掩码正常做减法就行(不存在奇数加1的情况)
注意对于普通用户umask值是不一样的,普通用户uid大于199 并且用户和组要同名umask 为002
cat /etc/bashrc
home目录默认权限介绍
查看下面这张图发现用户家目录(home目录)默认权限不是755而是700
/home/dada 700, #由 /etc/login.defs 文件控制
为什么系统把默认权限定为:644,目录755呢?
- 安全临界值
- web服务运行时有一个虚拟用户www,项目文件由root用户创建,用户和组都是root,权限设置755最安全
drwxr-xr-x 5 root root 4096 Jul 6 2030 wordpress
- 图片上传目录授权 用户和用户组为www 权限为755
不让上传:解决上传不安全问题,限制上传文件类型
.jpg
不让执行:nginx 针对upload访问除了.jpg
之外不提供服务
不让执行:动态服务器和静态服务器分离,访问时静态服务器不安装程序运行环境(php,python,java)
不让执行:磁盘挂载时,设置禁止程序运行(二进制程序)