Permisos de carpetas y archivos de Linux

Permisos de carpetas y archivos de Linux

Si tengo un directorio en el que el usuario tiene permiso de lectura, ¿por qué no es posible comprobar si hay un archivo en ese directorio? Por ejemplo, digamos que tengo la carpeta /micarpeta con permiso de lectura. Esa carpeta tiene algún archivo 'garbage.txt' con permiso de lectura (para el usuario). Cuando intento usar stat /myfolder/garbage.txt aparece un error de permiso denegado. Si agrego permisos de ejecución para/micarpeta, puedo verificar si existe trash.txt.

¿Por qué necesito permisos de ejecución para comprobar si existe un archivo en una carpeta? Esperaba que los permisos de lectura en el directorio/carpeta fueran suficientes.

Respuesta1

En las carpetas de Linux los permisos son:

El bit de escritura permite al usuario afectado crear, cambiar el nombre o eliminar archivos dentro del directorio y modificar los atributos del directorio.

El bit de lectura permite al usuario afectado enumerar los archivos dentro del directorio

El bit de ejecución permite al usuario afectado ingresar al directorio y acceder a archivos y directorios dentro

El bit adhesivo indica que los archivos y directorios dentro de ese directorio solo pueden ser eliminados o renombrados por su propietario (o raíz).

Más información:

http://www.firewall.cx/linux-knowledgebase-tutorials/introduction-to-linux/299-linux-file-folder-permissions.html

Respuesta2

Los permisos de ejecución en un directorio le permiten recorrer ese directorio. Y debe poder acceder al directorio para usar estadísticas en ese archivo.

Ver tambiénhttps://stackoverflow.com/questions/790686/understanding-linux-directory-permissions-reasoning

información relacionada