umask(2)

NAVN
umask - angiv filtilstandens oprettelsesmaske

BIBLIOTEK
C-standardbibliotek (libc, -lc)

SYNOPSIS
#include <sys/stat.h>

mode_t umask(mode_t mask);

BESKRIVELSE
umask() anigver den kaldende proces filtilstandsoprettelsesmaske (umask) til mask & 0777 (dvs. kun filrettighedsdelen for mask bruges), og returnerer den tidligere værdi for masken.

Umask bruges af open(2), mkdir(2) og andre systemkald, der opretter filer til at ændre rettighederne placeret på nyoprettede filer eller mapper. Specifikt slukkes rettigheder i umask'en fra mode-argumentet til open(2) og mkdir(2).

Alternativt hvis overmappen har en standard-ACL (se acl(5)) så ignoreres umask'en, standard-ACL'en arves, rettighedsdelene angives baseret på den arvede ACL og rettighedsdelene fraværende i argumentet mode slukkes. For eksempel svarer den følgende standard-ACL til en umask på 022:

    u::rwx,g::r-x,o::r-x

Kombination af effekten for denne standard-ACL med et mode-argument for 0666 (rw-rw-rw-) vil medføre at filrettighederne er 0644 (rw-r--r--).

Konstanterne der skal bruges til at angive mask er beskrevet i inode(7).

Den typiske standardværdi for processens umask er S_IWGRP | S_IWOTH (oktal 022). I det normale tilfælde hvor argumentet mode til open(2) er angivet som:

    S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH

(oktal 0666) når en ny fil oprettes, vil rettighederne på filen være:

    S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH

(da 0666 & ~022 = 0644; i.e., rw-r--r--).

RETURVÆRDI
Dette systemkald lykkes altid og den tidligere værdi for masken er returneret.

STANDARDER
POSIX.1-2008.

HISTORIK
POSIX.1-2001, SVr4, 4.3BSD.

NOTER
En underproces oprettet via fork(2) arver sin overproces umask. Umask'en efterlades uændret af execve(2).

Det er umuligt at bruge umask() til at hente en proces umask uden på samme tid at ændre den. Et andet kald til umask() ville så være krævet for at gendanne umask'en. Opdelingen i disse to trin giver en risiko for afvikling af instrukser uden for sekvens i programmer med flere tråde.

Siden Linux 4.7 kan umask'en for enhver proces ses via feltet Umask i /proc/pid/status. Inspektion af dette felt i /proc/self/status gør at en proces kan hente sin umask uden på samme tid at ændre den.

Umask-indstillingen påvirker også rettighederne tildelt til POSIX IPC-objekter (mq_open(3), sem_open(3), shm_open(3)), FIFO'er (mkfifo(3)) og UNIX-domænesokler (unix(7)) oprettet af processen. Umask'en påvirker ikke rettighederne tildelt til System V IPC-objekter oprettet af processen (via msgget(2), semget(2), shmget(2)).

SE OGSÅ
chmod(2), mkdir(2), open(2), stat(2), acl(5)

OVERSÆTTELSE
Oversættere af denne manual til dansk Joe Hansen <joedalton2@yahoo.dk>

Denne oversættelse er gratis dokumentation; læs GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) eller nyere for ophavsretbetingelser. Der er INGEN ANSVAR.

Hvis du støder på fejl i oversættelsen af ​​denne vejledning, skal du sende en besked til debian-l10n-danish@lists.debian.org.