如果我想要一个目录和文件具有权限:
-rw-r---w- -文件
drwxr-xw- - 目录
为什么我的 umask 值 024 不起作用?
答案1
文件通常是使用权限创建的rw-rw-rw-
(在应用 umask 之前),目录使用权限创建rwxrwxrwx
。由于您分别想要rw-r---w-
和rwxr-x-w-
,因此您需要屏蔽----w-r-x
。
你可以设置这个使用
umask 025
(将掩码设置为八进制值),或者
umask u=rwx,g=rx,o=w
(设置允许符号模式下的权限)。
看为什么 umask 不更改文件的执行权限?有关默认权限的讨论。
答案2
默认掩码是u=rwx,g=rwx,o=rwx (octal 000)
umask u=rwx,g=rx,o=rx symbolic mode
umask 022 numeric mode
数字掩码替换当前文件模式创建掩码。它被指定为无符号八进制整数,由以下模式位的逻辑或(和)构成(可以省略前导零):
0400 ( a=rwx,u-r) Read by owner
0200 ( a=rwx,u-w) Write by owner
0100 ( a=rwx,u-x) Execute (search in directory) by owner
0040 ( a=rwx,g-r) Read by group
0020 ( a=rwx,g-w) Write by group
0010 ( a=rwx,g-x) Execute/search by group
0004 ( a=rwx,o-r) Read by others
0002 ( a=rwx,o-w) Write by others
0001 ( a=rwx,o-x) Execute/search by others
要检查 umask 值:
$ umask -S
u=rwx,g=rx,o=rx