Una curiosidad de Mac OS X: el "sticky bit"

Una curiosidad de Mac OS X: el "sticky bit"
Facebook Twitter Flipboard E-mail

Permisos del sistema, listas ACLs, archivos protegidos, carpetas… es tal el número de características especiales de Mac OS X en las carpetas que muchas veces cuesta bastante poner en práctica todas ellas.

El sticky bit es una característica bastante especial del sistema de Apple que en realidad es una de esas pequeñas “herencias” del sistema UNIX. Gracias a esta características, algunas carpetas del sistema tiene un comportamiento bastante peculiar.

En concreto en el sistema contamos con una carpeta que, por defecto, hace uso de esta tecnología. Esta carpeta es la carpeta Compartido, que cuenta con una propiedad peculiar: cualquier usuario puede dejar contenido dentro de dicha carpeta, pero únicamente los usuarios que han copiado/creado esos archivos son capaces de retirarlos.

Sticky bit, funcionamiento y cómo conocer qué carpetas lo usan

De la Wikipedia podemos rescatar un poco de historia de esta peculiaridad de los sistemas UNIX:

El sticky bit es un permiso de acceso que puede ser asignado a ficheros y directorios en sistemas Unix. Históricamente, el sticky bit se utilizaba en ficheros ejecutables. Cuando se asignaba, le indicaba al sistema operativo (SO) que mantuviera el programa en swap para ejecuciones posteriores (incluso de otros usuarios). Desde entonces el rendimiento de las tecnologías de almacenamiento persistente han mejorado mucho y este uso ha quedado obsoleto. Hoy en día, el sticky bit se utiliza con directorios. Cuando se le asigna a un directorio, significa que los elementos que hay en ese directorio sólo pueden ser renombrados o borrados por el propietario del elemento, el propietario del directorio o el usuario root, aunque el resto de usuarios tenga permisos de escritura.

Por defecto, en la actual versión de Mac OS X, sólo una carpeta en todo el sistema incluye esta característica activada. Dicha carpeta es la denominada “Shared” o “Compartido” y la podemos encontrar en el interior de la carpeta Users del sistema.

Dicha carpeta tiene la peculiaridad de que cualquiera de los usuarios del sistema operativo tienen permisos para escribir y ver su contenido, es decir pueden hacer lo que quieran con ella, pero única y exclusivamente los usuarios que han copiado un archivo a esa carpeta pueden eliminarlo.

Es decir, sólo el usuario que copia un archivo en ella puede eliminar el mismo de la carpeta, aunque podrá ver y copiar el resto de archivos disponibles aunque en ningún caso borrarlos.

Cómo asignar esta propiedad a un archivo

Crear más carpetas como estas en el sistema operativo es bastante simple aunque tenemos que recurrir obligatoriamente al Terminal para poder realizar la tarea.

  • El primer paso que tenemos que seguir es crear una carpeta, a dicha carpeta aplicaremos está propiedad.

  • Una vez creada tendremos que abrir el Terminal y localizarla haciendo uso de la navegación del sistema.

  • Cuando ya tengamos la carpeta localizada deberemos de ejecutar este comando:

chmod -R +t "nombre de la carpeta"

  • Una vez aplicado el nuevo comando podemos comprobar si hemos aplicado correctamente los permisos usando el comando “ls -l” el cual nos mostrará además de los permisos una “t” al final de los mismos para indicarnos que hablamos de una carpeta con sticky bit activado.

Comentarios cerrados
Inicio