您的位置:首页 > 运维架构 > Linux

linux 权限掩码 umask

2016-03-13 17:32 281 查看
 一 权限掩码umask

  umask是chmod配套的,总共为4位(gid/uid,属主,组权,其它用户的权限),不过通常用到的是后3个,例如你用chmod
755 file(此时这文件的权限是属主读(4)+写(2)+执行(1),同组的和其它用户有读写权限)
 
二 umask的作用
   默认情况下的umask值是022(可以用umask命令查看),此时你建立的文件默认权限是644(6-0,6-2,6-2),建立的目录的默认权限是755(7-0,7-2,7-2),可以用ls
-l验证一下哦 现在应该知道umask的用途了吧,它是为了控制默认权限,不要使默认的文件和目录具有全权而设的。
 
三 如何计算umask值

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

计算u m a s k值的方法:我们只要记住u
m a s k是从权限中“拿走”相应的位即可。

                                           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
目录
文件
0 2 2
7 5 5
6 4 4
0 2 7
7 5 0
6 4 0
0 0 2
7 7 5
6 6 4
0 0 6
7 7 1
6 6 0
0 0 7
7 7 0
6 6 0
 
五 修改umask值
  知道了umask的作用后,你可以修改umask的值了,例如:umask 024则以后建立的文件和目录的默认权限就为642、753了。
 
六 将umask值保存到环境文件
  若要长期修改umask的值,可以把它写进/etc/profile或~/.profile或~/.bash_profile中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: