Estoy buscando una lista que especifique el permiso de archivo convencional de todos los diferentes tipos de archivos antes de que se aplique umask.
Leo en man 1p touch
que el valor predeterminado para un archivo normal es:
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH
También me arriesgaré y supondré que el valor predeterminado para un directorio y un enlace simbólico es:
S_IRWXU | S_IRWXG | S_IRWXO
Sin embargo, no puedo encontrar en las páginas man para stat.h
o mknod.h
/ mknod
cuáles son los permisos predeterminados de Sockets, FIFO, dispositivos de bloque y dispositivos Char. ¿Son iguales que los archivos normales? ¿O me he perdido una página de manual que explica esto?
Respuesta aceptada:
Parece que lo has entendido bastante bien;
se analiza un poco más aquí.
El único punto que puede haber pasado por alto es que encontró la declaración
en la página man para touch(1)
y no creat(2)
,
porque (con la posible excepción de los enlaces simbólicos),
no hay nivel de sistema valores predeterminados:
cada programa tiene su propio valor predeterminado individual.
Da la casualidad de que la mayoría de los programas (si no todos) siguen las mismas reglas.