Sto cercando un elenco che specifichi i permessi di file convenzionali di tutti i diversi tipi di file prima che venga applicato umask.
Ho letto in man 1p touch
che l'impostazione predefinita per un file normale è:
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH
Vado anche su un arto e suppongo che l'impostazione predefinita per una directory e un collegamento simbolico sia:
S_IRWXU | S_IRWXG | S_IRWXO
Tuttavia non riesco a trovare nelle pagine man di stat.h
o mknod.h
/ mknod
quali sono le autorizzazioni predefinite di Socket, FIFO, dispositivi Block e Char device. Sono uguali ai file normali? O ho perso una pagina man che spiega questo?
Risposta accettata:
Sembra che tu l'abbia capito abbastanza bene;
se ne parlerà un po' di più qui.
L'unico punto che potresti esserti perso è che hai trovato la dichiarazione
nella pagina man di touch(1)
e non creat(2)
,
perché (con la possibile eccezione dei link simbolici),
non ci sono a livello di sistema defaults —
ogni programma ha il proprio default individuale.
Succede che la maggior parte (se non tutti) i programmi seguono le stesse regole.