Umask

umask è un comando della shell testuale dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX[1], che permette di suggerire ai programmi avviati successivamente quali permessi negare al momento della creazione di nuovi file e directory. Ha effetto solo per i programmi avviati successivamente ad umask, e solo se avviati dalla stessa shell, differendo da chmod sia perché quest'ultimo modifica i permessi successivamente alla creazione dei file o directory, sia perché i permessi forniti con chmod sono quelli effettivi e non quelli negati.

umask è anche il nome di una chiamata di sistema definita dallo standard POSIX[2] che modifica un omonimo attributo dei processi (precisamente del process control block), il quale mantiene il valore corrente di tale suggerimento, e che viene ereditato dai processi figli. Di fatto, il comando umask della shell, che è interno alla shell stessa e non è un programma esterno, agisce semplicemente invocando tale chiamata di sistema per modificare il valore corrente della maschera del processo della shell; il nuovo valore viene poi ereditato dai comandi avviati in seguito dalla stessa shell (ma non, ad esempio, dai comandi avviati in precedenza o avviati da altre shell).

Il comando e la chiamata di sistema umask modificano solo il comportamento predefinito dei programmi, i quali mantengono la possibilità tecnica di aggirare il suggerimento, ad esempio cambiando il valore dell'impostazione corrente o modificando esplicitamente i permessi dei nuovi file e/o directory create. È possibile negare solo permessi standard di lettura, scrittura ed esecuzione, e non altri tipi di permessi.

  1. ^ (EN) umask (utilities), in The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. URL consultato il 27-05-2008.
  2. ^ (EN) umask (functions), in The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. URL consultato il 27-05-2008.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne