umask

noteId: F99D325A6C0C4CA1A9454864D0A010F3 · 原始路径:/ALL/Linux - A模块/服务配置/文件权限管理/管理文件权限 命令及具体参数/umask.note

umask    //查看当前umaskumask 070    //更改umask

umask用于定义文件或目录的权限,chmod 用于改变已有文件或目录的权限,而umask用于定义新建文件或目录的默认权限

定义umask后,在新建文件或目录时,会禁用umask设置的对应权限,例如:

umask 0135

也就是: u:x g:wx o:rx (第一个字符 0 是代表特殊权限,不设置时可以不输入该字符)

当用户创建文件,赋予权限为:754 时,会将用户赋予的权限减去umask设置的权限,但不是直接数字地减,而是:

用户赋予权限:-rwx--r-x--r--

umask定义权限:---x---wx--r-x

用赋予权限减umask就是:

属主权限等于:rwx - x = r-w

属组权限等于:rx - wx = r--

其他人权限为:r - rx = ---

当赋予权限中有umask对应的权限,那么会将其去除,如果没有,则像数字计算那样减

一般来说,用户的umask 默认值为:0022

修改 umask:

·临时修改:

umask 042

使用该代码,只在当次登陆有效

·永久修改(单个用户):

echo "umask 077" >> /home/user/.bashrc

修改用户家目录下的环境文件

·永久修改(所有用户):

echo "umask 007" >> /etc/profile

这些文件是用户登陆时读取加载的环境配置,并非只能用来执行umask