Primero, piense: ¿Qué es un directorio? Es solo una lista de elementos (archivos y otros directorios) que viven dentro. Entonces: directorio = lista de nombres.
Leer bit = Si está configurado, puede leer esta lista. Entonces, por ejemplo, si tiene un directorio llamado poems
:
- Puede
ls poems
y obtendrá una lista de artículos que viven dentro (¡ -l
no revelará ningún detalle!).
- Puede usar la finalización de la línea de comandos, es decir
touch poems/so <TAB> poems/somefile
.
- No puede crear
poems
su directorio de trabajo (es decir, cd
en él).
Write bit = Si está configurado, puede modificar esta lista, es decir, puede {agregar, renombrar, eliminar} nombres en ella. ¡Pero! En realidad, puede hacerlo solo si el bit de ejecución también está configurado.
Ejecutar bit = Haga de este directorio su directorio de trabajo, es decir, cd
en él. Necesita este permiso si desea:
- acceder (leer, escribir, ejecutar) elementos que viven dentro.
- modifique la lista en sí misma, es decir, agregue, cambie el nombre, elimine nombres en ella (por supuesto, el bit de escritura debe establecerse en el directorio).
Caso interesante 1 : Si tiene permisos de escritura + ejecución en un directorio, puede {eliminar, renombrar} elementos que viven dentro, incluso si no tiene permisos de escritura en esos elementos. (use un poco adhesivo para evitar esto)
Caso interesante 2 : si tiene permiso de ejecución (pero no escritura) en un directorio Y tiene permiso de escritura en un archivo que se encuentra dentro, no puede eliminar el archivo (porque implica eliminarlo de la lista). Sin embargo, puede borrar su contenido, por ejemplo, si es un archivo de texto, puede usar vi para abrirlo y eliminar todo. El archivo seguirá allí, pero estará vacío.
Resumen:
Leer bit = Puedes leer los nombres en la lista.
Escribir bit = Puede {agregar, renombrar, eliminar} nombres en la lista SI el bit de ejecución también está configurado.
Ejecutar bit = Puede hacer de este directorio su directorio de trabajo.
PD: El artículo mencionado por Kusalananda es una buena lectura.