linux权限与umask的关系

linux文件的权限主要针对三类对象进行定义
    owner: 属主, u
    group: 属组, g
    other: 其他, o
每个文件针对每类访问者都定义了三种权限
    r: Readable
    w: Writable
    x: eXcutable
rw-r--r--
前三位:表示用户所拥有的权限
中三位:表示用户所在组的权限
后三们:表示其他用户的权限

权限 二进制 八进制
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7



r:可读 w:可写 x:可执行

umask(反向掩码也叫遮罩码)
umask值 可以用来保留在创建文件权限

  新建FILE权限: 666-umask 如果所得结果某位存在执行(奇数)权限,则将其权限+1

(例:文件默认在创建的时候是没有执行权限的,所以最大权限为666,如果umask=023,666-023=643,这样其实是存在问题的。因为这样其他用户则拥有了执行权限,而这样默认是不允许的,所以需要进位加1,则正确结果为666-023=644,即对于文件而言如果减得的结果中含有执行权限,则需要将其加1处理。)
  新建DIR权限: 777-umask

 
默认umask值  

  非特权用户umask是 002
  root的umask 是 022

#umask可以查看当前umask
查看umask时是四位最左侧的不用管(是扩展位sst:SUID, SGID, Sticky{000-111})

遮罩码可以自行设定,使用命令为:
#umask NUMBER
umask暂时修改只对当前shell有效

如要永久更改修改

  全局设置: /etc/bashrc

  用户设置:~/.bashrc


猜你喜欢

转载自www.cnblogs.com/springquanquan/p/9388306.html