Veloce incursione nel mondo Linux/Unix.
umask = 777 – diritti di lettura / scrittura (in ottale)
il valore umask è il complemento a 128 dei permessi di scrittura. Ci dice quali permessi vogliamo negare sul file più che concedere.
Ad esempio se una directory è leggibile / scrivibile / eseguibile dal proprietario e solo leggibile/eseguibile dalresto del mondo (il gruppo e tutti gli altri), si ha:
- proprietario = 111 = 7
- gruppo = 101 = 5
- altri = 101 = 5
per cui umask = 777 – 755 = 022 (ottale)
Se anche il gruppo dovesse poter scrivere, si deve impostare la directory con
chmod 775 /path/to/dir
ossia umask = 777 – 775 = 002.
umask
è un comando Unix che altera permanentemente i diritti di accesso ai file / directory creati dopo il comando per quella shell. Esempio:
marcob@jsbach:~$ umask 022 marcob@jsbach:~$ touch nuovo marcob@jsbach:~$ ll nuovo -rw-r--r-- 1 marcob marcob 0 2011-03-07 15:28 nuovo marcob@jsbach:~$ umask 002 marcob@jsbach:~$ touch nuovo1 marcob@jsbach:~$ ll nuovo* -rw-r--r-- 1 marcob marcob 0 2011-03-07 15:28 nuovo -rw-rw-r-- 1 marcob marcob 0 2011-03-07 15:28 nuovo1
Ma cosa vuol dire:
drwxrwxrwt 15 root root 4096 2011-03-07 14:55 tmp/
cioè cosa significa la t
?
Significa che per la directory /tmp/
è stato impostato lo sticky bit (bit adesivo) che fa in modo che nella directory tutti possano scrivere ma solo i proprietari dei file possano rinominarli o cancellarli.
Per i file: il kernel, quando carica nella swap area un file eseguibile, non lo rimuove (lo incolla letteralmente alla swap area) nemmeno quando ha terminato l’esecuzione. Questo, soprattutto alle origini, per fare in modo che i programmi più frequentemente usati dall’utente rimanessero in memoria per avviarli più rapidamente.
Commenti recenti