Permiso para archivos:
chmod 664 myFile // rw-rw-r--
Y para carpetas:
chmod 774 myFolder // rwxrwxr--
Si solo uso el permiso "leer y escribir", las carpetas no mostrarán su contenido.
¿Cuál es la razón de esto?
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.
cd
) lo ingresa (ejecuta).Los permisos de ejecución en un directorio le permiten recorrerlo, para usar los recursos contenidos en él.
fuente
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.fuente
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
elx
bit, de lo contrario, ni siquiera podrá acceder a su directorio de inicio.fuente