¿Por qué se necesitan permisos de ejecución junto con permisos de escritura para crear un archivo en C (Linux)?

¿Por qué se necesitan permisos de ejecución junto con permisos de escritura para crear un archivo en C (Linux)?

Estoy intentando crear un archivo a partir de mi código fuente C en Linux. Estoy usando el ddcomando para leer de un archivo y escribirlo en un archivo creándolo. Si no tengo permisos de ejecución (tengo permisos de escritura) para el directorio de destino (donde se creará el archivo), no puedo crear el archivo. Si tengo permisos de escritura y ejecución, puedo crear un archivo.

¿Cuál es la razón para esto?

Respuesta1

Cuando se configuran, los atributos de modo r, w y x tienen el siguiente efecto en archivos y directorios:

  • r Atributo (permiso de lectura):

Archivos:Permite que un archivo seaabrióyleer.

Directorios:Permite enumerar el contenido de un directorio. Para recuperar cualquier información sobre los archivos o directorios que los contienen,También se debe establecer el atributo de ejecución.

  • w Atributo (permiso de escritura):

Archivos:Permite escribir o truncar un archivo; sin embargo, este atributono permite cambiar el nombre o eliminar archivos. Se determina la capacidad de eliminar o cambiar el nombre de archivos.por atributos de directorio.

Directorios:Permite crear, eliminar y cambiar el nombre de archivos dentro de un directorio.si el atributo de ejecución también está configurado.

  • x Atributo (permiso de ejecución):

Archivos:Permite tratar un archivo como un programa y ejecutarlo. Archivos de programa escritos en lenguajes de scriptingTambién debe configurarse como legible para ser ejecutado..

Directorios:Permite que un directorio seaingresó, por ejemplo, directorio de cd.

Referencia: La línea de comandos de Linux® William E. Shotts, Jr.

Recomiendo leer este libro o la versión en pdf que puedes descargar desde este enlace:http://sourceforge.net/projects/linuxcommand/files/TLCL/13.07/TLCL-13.07.pdf/download

Respuesta2

El bit de ejecución en un directorio le otorga la posibilidad de ingresar/recorrerlo. Por lo tanto, es un requisito previo crear un archivo (de lo contrario, puede ingresarlo) también en su caso.

información relacionada