¿Por qué los archivos de Mac pueden tener múltiples propietarios?

Con respecto a los permisos de archivo de Unix, que usan las Mac, ¿por qué los archivos de Mac en particular pueden tener múltiples propietarios? Por ejemplo, puede ver el panel "Obtener información" de un archivo y, en la sección Permisos en la parte inferior, agregar otro propietario haciendo clic en el signo más "+".

¿Como funciona esto? ¿No creo que Vanilla Unix sea capaz de hacer esto?

Respuestas (1)

Tienes razón, Vanilla Unix no es compatible con esto. Pero existe esta cosa llamada ACL (Listas de control de acceso) que permite una definición mucho más granular de los derechos de acceso que los derechos habituales de usuario/grupo/mundo. De Wikipedia :

La mayoría de los sistemas operativos Unix y similares a Unix (p. ej., Linux, BSD o Solaris) son compatibles con las ACL POSIX.1e, basadas en un borrador POSIX inicial que se abandonó. Muchos de ellos, por ejemplo, AIX, FreeBSD, Mac OS X a partir de la versión 10.4 ("Tiger") o Solaris con el sistema de archivos ZFS, admiten ACL NFSv4, que forman parte del estándar NFSv4.

De forma predeterminada, cada archivo solo tiene los derechos de usuario/grupo/mundo

ingrese la descripción de la imagen aquí

pse@Fourecks:~/Downloads$ ls -le UML_Plakat_8_2012_Web-Download_V1.pdf 
-rw-r--r--@ 1 pse  staff  4914537 Jun 21 09:56 UML_Plakat_8_2012_Web-Download_V1.pdf

Si ahora agrega un propietario adicional

ingrese la descripción de la imagen aquí

Finder crea automáticamente una entrada de ACL correspondiente para esto:

pse@Fourecks:~/Downloads$ ls -le UML_Plakat_8_2012_Web-Download_V1.pdf 
-rw-r--r--@ 1 pse  staff  4914537 Jun 21 09:56 UML_Plakat_8_2012_Web-Download_V1.pdf
 0: user:jonnyenglish allow read,readattr,readextattr,readsecurity

También puede modificar las entradas de ACL directamente desde la Terminal usando chmod(lo que le brinda muchos más detalles para manipular que el cuadro de diálogo Obtener información en Finder). Para más detalles, probablemente sea mejor ejecutar man chmoden Terminal y leer la sección OPCIONES DE MANIPULACIÓN DE ACL .

Perfecto, aunque solo agregaría que tendrá dificultades para encontrar una implementación moderna de Unix que no admita esto, es muy estándar, es solo que es un dolor de cabeza para administrar a nivel de línea de comando, y la mayoría de la gente nunca necesita ser consciente de ello
Es un dolor de administrar incluso con GUI porque puede dispararse en el pie bastante rápido.