版权所有 © 2014 tutorialspoint
umask - 设置文件模式创建掩码
#include <sys/types.h> #include <sys/stat.h> mode_t umask(mode_t mask);
mode_t umask(mode_t mask);
umask() 将调用进程的文件模式创建掩码 (umask) 设置为 mask & 0777。
umask 由open(2)、mkdir(2) 和其他创建文件的系统调用使用,以修改对新创建的文件或目录设置的权限。具体来说,umask 中的权限将从open(2) 和mkdir(2) 的 mode 参数中关闭。
用于指定 mask 的常量在stat(2) 中进行了描述。
进程 umask 的典型默认值为 S_IWGRP | S_IWOTH(八进制 022)。在通常情况下,当 mode 参数传递给open(2) 时指定为
S_IRUSR | S_IWUSR | S_IRGRP | S_IWRGRP | S_IROTH | S_IWOTH
(八进制 0666)以创建一个新文件,则结果文件的权限将为
S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH
(因为 0666 & ~022 = 0644;即,rw-r--r--)。
此系统调用始终成功,并返回掩码的先前值。
通过fork(2) 创建的子进程继承其父进程的 umask。execve(2) 不更改 umask。
SVr4、4.3BSD、POSIX.1-2001。
chmod (2)
mkdir (2)
open (2)
stat (2)
广告