La filosofia unix (reprise)

Unix (/ˈjuːnɪks/; comercializado como UNIX) es una familia de sistemas operativos multitarea y multiusuario que deriva del sistema operativo Unix de AT&T. Su desarrollo inició en 1970 en los Laboratorios de Investigación Bell por Ken Thompson y Dennis Ritchie, entre otros1,2.

Unix es un sistema operativo orientado al manejo de archivos. En este sentido, para el sistema operativo todo es un archivo: dispositivos, canales de comunicación, programas y datos. Dentro de los múltiples aspectos que la filosofía de diseño3,4 y del entorno de trabajo que sus diseñadores han contemplado sobresale lo siguiente:

Escribir programas que trabajen juntos.

Escribir programas que manejen flujos de textos, porque esa es la interfaz universal.

Para los novatos y para aquellos ya demasiado acostumbrados a otros sistema operativos, lo anterior llega a ser algo a lo que les cuesta trabajo acostumbrarse, Aunado a esto, puede resultar abrumador al inicio el sistema básico de permisos sobre los archivos, que parte de tres grandes conjuntos o niveles de protección: propietario, grupo y otros, y tres permisos por cada nivel: lectura (r), escritura (w) y ejecución (x). Ver recuadro inferior izquierdo en la imagen inferior para los efectos de este último bit en los directorios. Estos son los famosos «modos» (como se traduciría literalmente del inglés, pero que aquí llamamos «permisos»).

Sin embargo, hay otro conjunto de bits que acompañan a los permisos que son muy frecuentemente obviados, ignorados o mal entendidos (y a veces hasta mal implementados5,6). Uno de ellos es el sticky bit, que es particularmente útil para crear directorios compartidos en los que la única restricción es que los archivos puedan ser borrados únicamente por sus dueños. Curiosamente esta es una situación muy común en los ambientes colaborativos donde se busca que los miembros de un grupo de trabajo tengan acceso un contenedor de archivos y puedan ver (incluso editar el contenido de éstos) pero siempre está el problema y preocupación por que puedan ser borrados por alguien más que no sea su su dueño. Para esos casos la respuesta es el sticky bit.

Tal y como se ilustra en el recuadro inferior central de la figura previa , colocar el sticky bit es similar, basta agregar un dígito más (un 1 de hecho). Para el ejemplo mencionado basta chmod 1644 file.txt para prender el mencionado bit.

Referencias

  1. «History of Unix«, Wikipedia, web. Visited: 2023.07.13. URL: https://en.wikipedia.org/wiki/History_of_Unix.
  2. «Unix History«, levenez.com, web. Visited: 2023.07.13. URL: https://www.levenez.com/unix/.
  3. «Unix Philosophy«, Wikipedia, web. Visited: 2023.07.13. URL: https://en.wikipedia.org/wiki/Unix_philosophy.
  4. «Basics of the Unix Philosophy«, harvard.edu, website for CSCI-E26: Introduction to C, Unix/Linux Programming, with Web Interfaces course. Visited: 2023.07.12 URL: https://cscie2x.dce.harvard.edu/lectures/lect02/6_Extras/ch01s06.html.
  5. «Vulnerability CVE-2011-3216«, cvedetails.com, web: Visited: 2023.07.13. URL: http://www.cvedetails.com/cve/CVE-2011-3216/.
  6. «Sticky bit, ACL, POSIX«, Apple, Inc. , web forums. Visited: 2023.07.13. URL: https://discussions.apple.com/thread/2781638.
  7. «Sticky bit«, Wikipedia, web. Consulted: 2023.07.13. URL: https://en.wikipedia.org/wiki/Sticky_bit.

Deja un comentario

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.