Además de pertenecer a un usuario y un grupo, cada fichero y directorio tiene un modo, que determina quién puede leer, escribir y ejecutarlo (e invocarlo, si es un programa). Hay algunas propiedades que el modo también determina, pero son cuestiones avanzadas que obviaremos por el momento.
El modo es semejante al que apareció en la salida de ls: -rw-r-r-. Por el momento, vamos a tomar en cuenta nueve de estas partes: aquellas que controlan los permisos de lectura, escritura y ejecución del usuario dueño del fichero, del grupo que posee el fichero, y de otros (el resto del sistema, llamado a veces mundo - world).
En la línea de modo, el primer «elemento» proporciona el tipo de
fichero. El guión (-), en este caso, indica que es un fichero
normal y corriente. Si fuese una d, estaríamos viendo un
directorio. Hay otras posibilidades demasiado complejas para verlas
aquí. Para más detalles, lea la sección 19.2.2 en la página
.
Los nueve elementos restantes se utilizan para mostrar el modo del fichero. Los 9 bits básicos (lectura, escritura, y ejecución para el usuario, grupo y otros) se muestran en tres bloques de rwx. Por lo tanto, si todos los permisos están activados, y es un fichero normal, el modo será como éste: -rwxrwxrwx. Si fuese un directorio con todos los permisos de los otros (el resto del mundo) desactivados, y activados todos los permisos del usuario y el grupo, sería drwxrwx--.
Código | Nombre | En Ficheros Permite | En Directorios Permite |
r | lectura | Examinar el contenido del fichero | Listar el contenido del directorio |
w | escritura | Modificar el fichero | Modificar o borrar ficheros en el directorio |
x | ejecución | Ejecutarlo como orden | Acceso a los ficheros en el directorio |
Los modos de los directorios pueden resultar algo confusos, por lo que aquí tenemos algunos ejemplos de los efectos de varias combinaciones:
El permiso de escritura de los directorios determina si puede borrar ficheros de él. Puede borrar un fichero de sólo lectura si tiene permisos de ejecución en el directorio que lo contiene. Incluso puede borrar un fichero en un directorio de sólo lectura, siempre y cuando tenga permiso para hacer cambios al fichero.
Esto significa también que si es el dueño de un directorio, siempre podrá borrar ficheros de él, aunque pertenezcan al root.
Los permisos de ejecución de un directorio determinan si tiene acceso a los ficheros (y por lo tanto entran en juego los permisos de los ficheros). Si tiene permisos de ejecución en un directorio, los permisos de los ficheros que contenga cobran importancia. En cualquier otro caso, sencillamente, no importan los permisos que tengan los ficheros; no puede acceder a ellos de ninguna manera.