Linux 建立新档案或目录时, 该档案及目录会有一个默认权限, 要修改这个默认权限, 可以用 umask 指令。
umask 的用法与 chmod 相反, chmod 是在 “000” 上面 “增加” 权限, 而 umask 则是在 “666” 基础上 “减少” 档案权限; 及在 “777” 基础上 “减少” 目录权限。这个讲法可能有点混乱, 看看实际例子更易明白, 例如:
# umask 022
上面用 umask 设定默认权限为 022, 即默认档案权限设定为 644, 因为 [666 – 022 = 644]; 及默认目录权限设定为 755, 因为 [777 – 022 = 755].
RHEL, CentOS 及 Fedora 默认是 022, 可能直接用 umask 查看默认值:
# umask
0022
0022
要临时修改默认权限, 可以这样:
# umask 0066
这时新档案的默认权限会是 600, 以及新目录的默认权限是 711, 但当登出系统时便会重新使用默认值。 要让设定值永久生效可以开启 /etc/bashrc, 找到一行 umask 022, 将里面的 022 改为想要的设定值即可。
如果只要对个别用户设定, 可以开启该用户目录下的 .bashrc 档案, 例如:
vi ~/.bashrc
然后加入这行:
|
1 |
umask 022 |