Linux默认权限掩码

Linux教程

Linux教程:http://www.fdlly.com/m/linux
@[toc]

默认权限掩码

当我们创建文件或目录时,系统会自动根据权限掩码来生成预设权限;默认情况下的umask值是022(可以用umask命令查看),此时你建立的文件默认权限是644(6-0,6-2,6-2),建立的目录的默认权限是755(7-0,7-2,7-2),
umask可用来设定权限掩码;权限掩码是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件或目录时的预设权限

计算umask值

umask命令允许你设定文件创建时的缺省模式,对应每一类用户(文件属主、同组用户、其他用户)存在一个相应的umask值中的数字。对于文件来说,这一数字的最大值分别是6。系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用chmod命令增加这一权限。目录则允许设置执行权限,这样针对目录来说,umask中各个数字最大可以到 7。

计算umask值的方法,我们只需要记住umask是从权限中拿走相应的位即可

umask中的某位 文件 目录
0 6 7
1 6 6
2 4 5
3 4 4
4 2 3
5 2 2
6 0 1
7 0 0

如果umask为023,则对于文件所有者,不拿去任何权限,而新建的文件默认没有执行权限,故对文件所有者的权限位rw-(6);对组所有者,拿去写权限,原本没有执行权限,故为r--(4);对其他用户,拿去写和执行权限,原本没有执行权限,故为r--(4);

如果umask为023,因为没有新建目录没有执行权限的限制。则对于目录所有者,不拿去任何权限,故对目录所有者的权限为rwx(7);对组所有者,拿去写权限,故为r-x(5);对其他用户,拿去写和执行权限,故为r--(4);

常用的u m a s k值及对应的文件和目录权限

umask 文件 目录
022 644 755
027 640 750
002 664 775
006 660 771
007 660 770

umask语法

功能说明:指定在建立文件或目录时预设的权限掩码
语法

umask [-S] [权限掩码]

选项及参数

  • -S:以文字的方式来表示权限掩码

umask实例

设置权限掩码

[root@localhost ~]# umask 022

以文字的方式设置权限掩码

[root@localhost ~]# umask u=rw,g=r,o=r

查看系统当前的权限掩码

[root@localhost ~]# umask
0022

你可能感兴趣的:(Linux默认权限掩码)