Newsgroup: it.comp.os.linux.sys
Titolo: Domanda su umask

Ciao a tutti!
Sono reduce dai Test LPIC101 e LPIC102 (fatti ieri).
Ritengo di averli passati, ma devo aspettare qualche settimana per la
correzione, in compenso ho un dubbio che mi attanaglia da ieri (quando ho
letto la domanda) e che non riesco proprio a sciogliere...
In pratica, si chiedeva che umask occorre impostare per avere un FILE con
i permessi rw-r---- (640).
Tra le risposte possibili, l'unica sensata era un 027 (che poi, da prove
fatte si e' rivelata anche quella corretta ed e' anche quella che ho
segnato).
Pero': intanto che mi preparavo (e dall'esperienza acquisita) ho imparato
che la umask la si calcola molto semplicemente sottraendo i permessi
voluti (in ottale) da 666 (per i files) o 777 (per le directories).
Quindi, a rigore, avrei dovuto avere una umask a 026.
Le prove fatte mi hanno confermato che una umask impostata a 026 mi
consente di creare files che hanno i permessi a 640, come immaginavo.
Esattamente come una umask a 027, come invece NON immaginavo.
OK, quindi ho risposto correttamente, anche se un po' per caso e con tanti
dubbi.
Ora quello che pero' vorrei capire e' come mai sono corrette entrambe...
Una mia teoria, che si e' affacciata in questo momento in quella massa di
neuroni che io, molto pomposamente, definisco cervello e' che se si parla
di files, tutti i bits della umask che rappresentano i diritti di
esecuzione vengono ignorati.
E' corretta oppure e' un'idea assurda partorita dalla mancanza di caffe'
in ufficio?
Grazie
Luca Bertoncello
(
luca...@lucabert.de
)
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Ora quello che pero' vorrei capire e' come mai sono corrette entrambe...
Perche` la umask e` appunto una maschera applicata ai permessi richiesti 
dall'applicazione che crea il file o la directory.
Siccome le applicazioni richiedono 666 per i file e 777 per le directory, 
di default, le due umask sono equivalenti nel caso dei file, ma non nel 
caso delle directory.
Bye.

Alessandro Pellizzari ha scritto:




OK, quindi la teoria partorita stamani del mio mucchio di neuroni sparsi
e' quantomeno sensata.
Parlando di files, tutti i "bit maschera" di "x" vengono ignorati.
Giusto?


 ...
La umask (ed in generale tutte le maschere di bit) si calcolano facendo
un or esclusivo tra i permessi desiderati e la stringa contenenti tutti uno.
Praticamente si sottrae il valore numerico desiderato da 777 quindi la 
risposta corretta è 027.


Mettila così:
in realtà sottrai sempre da 7 (anche per i file: checché ne dicano la 
man page), solo che *non* vengono creati file eseguibili. Quindi umask 0 
viene trasformato in umask 1, umask 4 viene trasformato in umask 5,  e 
umask 6 viene trasformato in umask 7
-- 
echo onailimissaM | awk 'BEGIN { FS = "" }
{ for (i = NF; i >= 1; i-- )
   printf $i }'; echo

 di esecuzione automaticamente (perchè È MALE!)
effettivamente non fa mai creare file eseguibili, e per questo si 
dovrebbe usare il comando 'install'.
Però... bo', se uno sa quello che fa, non capisco perché non farglielo fare.


 fare.
Dietro Linux ci sono quaranta anni di esperienza di UNIX, se ti dicono
che una cosa è male credici. Se Linux è meno sensibile all'attacco dei
virus rispetto ad altri sistemi operativi è perché ci sono tante piccole 
precauzioni che vengono prese. O no?


fondamentalmente d'accordo sui 40 anni etcetera... ma che sicurezza è se 
io posso fare:
$ touch a; install -m 777 -o maxadamo ./a ./b
$ touch a; chmod 777 a
Cioè: non penso che questo serva a salvarci dai virus.
Penso che il ragionamento da fare sia diverso, e in questo momento mi 
sfugge.


 sfugge.
secondo me serve solo a "proteggerti da te stesso", nel senso che ti 
evita di fare qualcosa di inconsapevole.
Se tu fai chmod, sei tu che lo fai, e lo fai quindi consapevolemente: 
devi digitare ben 9 tasti per scrivere "chmod 777" e premere quindi invio.
Ma se te lo fa una umask, magari impostata precedentemente da qualcun 
altro, tu rischi di fare qualcosa inconsapevolmente.
... non so se qualcuno è più lungimirante di me, ma io non vedo altro senso.


 Cioè: non penso che questo serva a salvarci dai virus.
La sicurezza è un abito mentale. Certo fare cp e poi chmod e chown 
costringe ad essere consapevoli di ciò che si sta facendo e quindi in
prima battuta protegge noi da noi stessi (come hai ricordato) ma anche 
dagli errori e dalle cattive intenzioni di altri. Questo è solo un pezzo di 
tutto il meccanismo che si è andato sviluppando in quaranta anni, può 
non sembrare tanto importante ma è solo un tassello piccolo..

 speciali
aaah, ok.
Usi install solo se vuoi alterare permessi/ownership in modo preciso.
Se vuoi solo preservare i permessi userai cp, rsync  con gli switch del 
caso.
