Sí, Mac tiene muchas mejoras para Unix en el área de archivos. Ignorando todo el tema de la bifurcación de recursos que ya no se usa mucho, hay:
- los permisos estándar de Unix,
ugo
rwx
etc. Se aplican herramientas normales de Unix.
- ACL , visible
ls -le
y modificable con chmod [ -a | +a | =a ]
.
- marcas de archivo visibles con
ls -lO
(mayúscula, no cero) y modificables con chflags
.
- atributos extendidos , visibles con
ls -l@
(solo claves de atributos) y visibles y modificables con xattr
. (Úselo xattr -h
como ayuda si man xattr
no le da nada).
- Comenzando con OS X 10.11 "El Capitan", la Protección de integridad del sistema (SIP) protege aún más algunos archivos de los cambios de los procesos normales, incluso cuando se usa
sudo
para ejecutarse como root
. Los archivos protegidos por SIP se mostrarán ls -lO
con el restricted
indicador y / o ls -l@
con el com.apple.rootless
atributo.
Se le pueden negar las operaciones en un archivo debido a los permisos de Unix, las ACL, los indicadores de archivo o SIP. Para desbloquear completamente un archivo:
sudo chmod -N file # Remove ACLs from file
sudo chmod ugo+rw file # Give everyone read-write permission to file
sudo chflags nouchg file # Clear the user immutable flag from file
sudo chflags norestricted file # Remove the SIP protection from file
sudo xattr -d com.apple.rootless file # Remove SIP protection from file
Si la Protección de integridad del sistema (SIP) está habilitada sudo chflags norestricted
y sudo xattr -d com.apple.rootless
también devolverá un error "Operación no permitida". Para borrar el indicador y / o el atributo, debe iniciar en MacOS Recovery y ejecutar los comandos desde la Terminal (es posible que primero deba usar la Utilidad de Discos para desbloquear y montar su unidad de inicio, luego recuerde que sus archivos estarán debajo /Volumes/Macintosh HD
o sea cual sea su inicio unidad se llama) o deshabilite SIP por completo y luego reinicie y los comandos deberían funcionar. Sin embargo, tenga en cuenta que las futuras actualizaciones del sistema operativo probablemente restablecerán el restricted
indicador y el com.apple.rootless
atributo a cualquier archivo del que lo haya eliminado.
No se recomienda deshabilitar SIP, ya que elimina mucha protección contra malware y daños accidentales, además no es necesario cuando simplemente puede eliminar la protección por archivo. Si deshabilita SIP, vuelva a habilitarlo cuando haya terminado de hacer cambios.
Tenga en cuenta que si ls -lO
muestra que el schg
indicador está configurado, debe ingresar al modo de usuario único para desactivarlo. No voy a entrar en eso aquí, ya que hay preguntas más importantes sobre por qué el archivo tiene ese indicador establecido y por qué está tratando de meterse con él y cuáles serán las consecuencias.
sudo chgrp wheel ./entries
?