3.2. Permisos

FreeBSD, cuya raiz histórica es el UNIX BSD, tiene sus fundamentos basados en varios conceptos clave de UNIX. El primero, y más remarcado, es que FreeBSD es un sistema operativo multi-usuario. El sistema puede manejar varios usuarios trabajando todos simultáneamente y en tareas que no guardan relación entre sí. El sistema es el responsable de compartir y administrar peticiones de dispositivos de hardware, periféricos, memoria y tiempo de Unidad Central de Proceso (CPU) de manera equitativa para cada usuario.

Debido a que el sistema es capaz de soportar múltiples usuarios, todo lo que el sistema administra tiene un conjunto de permisos que gobiernan quién puede leer, escribir y ejecutar el elemento. Estos permisos se guardan como octetos divididos en tres partes: una para el propietario del archivo, otra para el grupo al que el archivo pertenece, y otra para cualquier otro. Esta representación numérica funciona así:

Valor Permiso Listado de Directorio
0 No leer, no escribir, no ejecutar ---
1 No leer, no escribir, ejecutar --x
2 No leer, escribir, no ejecutar -w-
3 No leer, escribir, ejecutar -wx
4 Leer, no escribir, no ejecutar r--
5 Leer, no escribir, ejecutar r-x
6 Leer, escribir, no ejecutar rw-
7 Leer, escribir, ejecutar rwx

Si se muestra un listado expandido de directorio mediante ls -l, se mostrarán en una columna los permisos de fichero para el propietario, grupo y todos los demás. Veamos como se descompone:

-rw-r--r--

El primer carácter, de izquierda a derecha, es un carácter especial que indica si se trata de un archivo normal, un directorio, un dispositivo especial de tipo carácter o bloque, un socket, o cualquier otro dispositivo de pseudo-archivo. Los siguientes tres caracteres, expresados como rw- muestran los permisos para el propietario del archivo. Los siguientes tres caracteres, r-- muestran los permisos para el grupo al que el archivo pertenece. Los últimos tres caracteres, r--, muestran los permisos para el resto del mundo. Un guión indica que el permiso está desactivado. En el caso de este archivo, los permisos están asignados de tal manera que el propietario puede leer y escribir en el archivo, el grupo puede leer el archivo, y el resto del mundo sólo puede leer el archivo. De acuerdo con la tabla que se muestra más arriba, los permisos para este archivo serían 644, donde cada cifra representa las tres partes de los permisos del archivo.

Todo ésto está muy bien, pero ¿cómo controla el sistema los permisos de los dispositivos? FreeBSD en realidad trata la mayoría de los dispositivos hardware como un archivo que los programas pueden abrir, leer y en los que pueden escribir datos como si de cualquier otro archivo se tratara. Estos archivos especiales de dispositivos se encuentran en el directorio /dev.

Los directorios también son tratados como archivos. Tienen permisos de lectura, escritura y ejecución. El bit de ejecución en un directorio tiene un significado ligéramente distinto que para los archivos. Cuando un directorio está marcado como ejecutable significa que se puede mirar dentro, por ejemplo, se podría hacer un listado de ese directorio.

Hay más permisos, pero se usan principalmente en circunstancias especiales como los binarios ejecutables de tipo "setuid" y los los directorios de tipo "sticky". Si desea más información acerca de los permisos de archivos y cómo establecerlos, asegúrese de mirar la página de manual de chmod(1).

Éste y otros documentos pueden obtenerse en ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Para preguntas acerca de FreeBSD, leer la documentación antes de contactar con la lista <questions@FreeBSD.org>.
Para preguntas acerca de esta documentación, e-mail a <doc@FreeBSD.org>.

Hosting by: hurra.com
Generated: 2007-01-26 18:00:31