umask
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