Respuestas:
Como no puede 'ejecutar' un directorio, el bit de ejecución se ha utilizado mejor. El bit de ejecución en un directorio le permite acceder a elementos que están dentro del directorio, incluso si no puede enumerar el contenido de los directorios.
$ mkdir -p dir/
$ echo 'Hello World!' > dir/file
$ chmod 000 dir/
$ ls -al dir/
ls: cannot open directory dir: Permission denied
$ cat dir/file
cat: dir/file: Permission denied
$ chmod +x dir/
$ ls -al dir/
ls: cannot open directory dir: Permission denied
$ cat dir/file
Hello World!
Desde la página del chmod
manual:
Las letras rwxXst seleccionan bits de modo de archivo para los usuarios afectados: leer (r), escribir (w), ejecutar (o buscar directorios) (x) , ejecutar / buscar solo si el archivo es un directorio o ya tiene permiso de ejecución para algunos usuario (X), establecer ID de usuario o grupo en ejecución (s), bandera de eliminación restringida o bit fijo (t).
Los directorios (normalmente no se denominan carpetas en * nix) tienen un significado diferente para los bits de permiso que los archivos normales.
Para directorios, escribir permite crear nuevos archivos dentro de él.
Leer le permite enumerar los archivos que contiene.
Ejecutar le permite ingresarlo y acceder a archivos (u otros directorios) dentro.
Los permisos de ejecución en un directorio le permiten recorrerlo, para usar los recursos contenidos en él.
El bit "ejecutar" en realidad significa "buscar" cuando se aplica a directorios (desde man chmod
). Esto parece razonable ya que ejecutar no tiene significado para un directorio.
El x
bit en una carpeta se refiere a indexación / búsqueda de directorio / listado; ninguno de esos es posible si mantiene un poco bajo.
Aquí hay un ejemplo de su uso: si desea tener un usuario con permisos de lectura limitados en cada directorio, excepto en su hogar, por ejemplo /home/dummy
, debe hacer /
y configurar /home
el x
bit, de lo contrario, ni siquiera podrá acceder a su directorio de inicio.
cd
) lo ingresa (ejecuta).