Provided by: manpages-ja-dev_0.5.0.0.20131015+dfsg-2_all bug

名前

       umask - ファイルモード作成マスクを設定する

書式

       #include <sys/types.h>
       #include <sys/stat.h>

       mode_t umask(mode_t mask);

説明

       umask()   は、呼び出し元プロセスのファイルモード作成マスク (umask) を mask & 0777 に設定し
       (umask のファイル許可に対応するビットのみを使用する)、 変更前のマスク値を返す。

       umask は、 open(2), mkdir(2)  やファイル作成を行うその他のシステムコールで、  新しく作成さ
       れるファイルやディレクトリの許可  (permission)  を  修正するために使用される。  具体的には
       umask に設定されている許可が open(2)  や mkdir(2)  の mode 引き数から取り消される。

       mask に指定するのに使用すべき定数については stat(2)  で説明されている。

       プロセスの umask のよくあるデフォルト値は S_IWGRP | S_IWOTH (8進で  022)  である。  新しい
       ファイルを作成する際に open(2)  の mode 引き数に

           S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH

       を指定するというよくあるケースでは、作成されたファイルは

           S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH

       という許可を持つことになる (なぜなら 0666 & ~022 = 0644、つまり rw-r--r--)。

返り値

       このシステムコールは必ず成功し、以前の umask 値を返す。

準拠

       SVr4, 4.3BSD, POSIX.1-2001.

注意

       fork(2)   で作成された子プロセスは、親プロセスの  umask  を継承する。  execve(2)  によって
       umask は変更されない。

       umask の設定は、そのプロセスが生成する POSIX IPC  オブジェクト  (mq_open(3),  sem_open(3),
       shm_open(3))  や FIFO (mkfifo(3))、 UNIX ドメインソケット (unix(7)) に設定される許可にも影
       響を与える。 一方、umask は、そのプロセスが (msgget(2), semget(2), shmget(2)  を使って) 生
       成する System V IPC オブジェクトに設定される許可には 影響を与えない。

関連項目

       chmod(2), mkdir(2), open(2), stat(2), acl(5)

この文書について

       この  man ページは Linux man-pages プロジェクトのリリース 3.54 の一部 である。プロジェクト
       の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。