UMASK(2) | Linux Programmer's Manual | UMASK(2) |
umask - imposta la maschera di creazione del modo di un file
#include <sys/types.h>
#include <sys/stat.h>
mode_t umask(mode_t mask);
umask() imposta la maschera di creazione dei permessi dei file del processo chiamante (umask) a mask & 0777 (cioè vengono usati solo i bit dei permessi dei file di mask), e restituisce il valore precedente della maschera.
La umask è usata da open(2), mkdir(2), e altre chiamate di sistema che creano file per modificare i permessi dati ai nuovi file o directory. Nello specifico i permessi nella umask sono disattivati dall'argomento mode in open(2) e mkdir(2).
Le costanti che possono essere utilizzate per specificare la mask sono descritte sotto stat(2).
Il tipico valore predefinito per il processo umask è S_IWGRP | S_IWOTH (ottale 022). Nel caso comune in cui l'argomento mode di open(2) sia specificato come:
(ottale 0666) quando si crea un nuovo file, i permessi sul file risultante saranno:
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH
(perché 0666 & ~022 = 0644; cioè rw-r--r--).
S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH
Questa chiamata di sistema ha sempre successo, e restituisce il valore precedente della maschera.
SVr4, 4.3BSD, POSIX.1-2001.
Un processo figlio creato attraverso fork(2) eredita la umask del genitore. La umask viene lasciata inalterata da execve(2).
L'impostazione di umask influenza anche i permessi assegnati agli oggetti IPC POSIX (mq_open(3), sem_open(3), shm_open(3)), FIFO (mkfifo(3)), e sui socket di dominio Unix (unix(7)) creati dai processi. L'umask non influenza i permessi assegnati agli oggetti IPC System V creati dal processo (usando msgget(2), semget(2), shmget(2)).
Questa pagina fa parte del rilascio 3.73 del progetto Linux man-pages. Una descrizione del progetto, le istruzioni per la segnalazione degli errori, e l'ultima versione di questa pagina si trova su http://www.kernel.org/doc/man-pages/.
La versione italiana fa parte del pacchetto man-pages-it v.
3.73, a cura di: ILDP "Italian Linux Documentation Project"
http://www.pluto.it/ildp
Per la traduzione in italiano si può fare riferimento a
http://www.pluto.it/ildp/collaborare/
Segnalare eventuali errori di traduzione a ildp@pluto.it
2008-01-09 | Linux |