Cómo usar indicadores de archivos para modificar el comportamiento de los archivos en macOS

Cómo usar indicadores de archivos para modificar el comportamiento de los archivos en macOS

macOS utiliza banderas para limitar cómo se puede cambiar un archivo. Se configuran de manera diferente a los permisos y se ejecutan en una estructura paralela junto con comandos como chown y chmod. estarás usando chflags cambiar de bandera, así como ls para ver las banderas. Unix ejecuta un sistema similar, pero con una mayor cantidad de opciones llamadas «atributos» en lugar de banderas.

Ver establecer indicadores en macOS

En Terminal, puede usar un ls bandera para ver las banderas existentes.

ls -lO 
~/Librarydrwx------@ 88  alexander staff hidden 2992 Jan 25 14:01 Library

Si no hay banderas configuradas para un archivo o carpeta, se mostrará un guión en su lugar.

ls -lO ~/Library/Caches
drwx------+ 234 alexander staff   -    7956 Jan 25 13:03 Caches

Las banderas establecidas se pueden eliminar usando su inversa, como se describe a continuación.

Configuración y eliminación de indicadores en macOS

usando-chflags-macos-chattr-lsattr-hero-set-flag

Las banderas aparecen con mayor frecuencia como un problema. Debido a que establecen permisos de permisos adicionales, es fácil pasarlos por alto. ¿Se encuentra con un archivo que no se puede borrar, independientemente de cuán elevados sean sus permisos de usuario? Es posible que deba borrar una o dos banderas.

Las banderas que se pueden configurar en macOS se enumeran a continuación. Esta es la lista completa de opciones disponibles, así como una explicación de su funcionalidad. La mayoría de las banderas solo las puede configurar el propietario del archivo o el superusuario; sappnd y schg solo puede establecerlos el superusuario, ya que son indicadores a nivel del sistema. Solo se puede establecer el indicador oculto sin escalada de privilegios.

Configuración de banderas en macOS

Cuando configure una bandera en macOS, use el siguiente comando. La bandera recursiva -R está disponible para operaciones a nivel de directorio:

sudo chflags -R [flag] /usr/bin/local
sudo chflags [flag] /usr/bin/local/mnt.sh
chflags -R hidden ~/Desktop

establecerá la bandera apropiada. Por ejemplo, lo siguiente establece el indicador nodump:

sudo chflags nodump /usr/bin/local/tty.sh

Solo se puede establecer o eliminar un indicador por comando chflags.

  • opaco establece la carpeta para que aparezca opaca cuando se ve a través de un montaje de uniónuna forma antigua de ver varios directorios simultáneamente.
  • no volcado evita que el archivo o la carpeta se descarguen durante el uso del dump comando para hacer una copia de seguridad de su sistema.
  • agregar, agregar establece el indicador de solo anexar del sistema, que permite agregar el archivo pero no modificarlo ni eliminarlo. Eliminar esta bandera requiere ingresar al modo de usuario único.
  • schg, cambio, simmutable establece el indicador inmutable del sistema, que bloquea todos los cambios de archivos por parte de todos los usuarios de cualquier nivel de privilegio. Eliminar esta bandera requiere que se ingrese al modo de usuario único.
  • uappnd, uappend establece el indicador de solo agregar del usuario. Esto puede ser configurado por el propietario del archivo y puede ser desactivado por el propietario sin escalar los privilegios. Dado que bloquea el archivo, con sappnd o schg con menor seguridad, se usa con mucha más frecuencia.
  • uchg, uchange, uinmutable establece el indicador inmutable del usuario, que tiene la misma relación con el indicador inmutable del sistema que el uappnd la bandera tiene que sappnd.
  • oculto establece la bandera oculta. Esto oculta el elemento dentro de la GUI del Finder y los comandos ls.

Borrar banderas en macOS

Para borrar una bandera dada, establezca su opuesto. En la mayoría de los casos, esto significa anteponer «no» a su comando. En el caso de nodump, use el indicador de volcado para borrar, así:

sudo chflags dump /usr/bin/local/oty.sh

Se pueden invertir más términos estándar con el prefijo «no», así:

sudo chflags nosappnd /usr/bin/local/oty.sh

Al igual que con chmod, está disponible una bandera recursiva:

chflags  -R nohidden ~/Desktop

Una vez que se hayan borrado las banderas, podrá cambiar la propiedad y los permisos del archivo como se esperaba.

Uso de atributos en Unix

usando-chflags-macos-chattr-lsattr-atributos

Unix ejecuta un sistema similar en el backend, pero se maneja con diferentes comandos. En las plataformas Linux más populares, tendrá acceso a chattr y lsattr. Estas banderas se usan para cambiar y ver «atributos», que es lo que pasan las banderas en la mayoría de las otras instalaciones de Unix.

Los atributos se pueden ver con lsattr:

Los atributos cambiantes se basan en un código de inicialismo y se enumeran en el página del manual de chattr:

“Las letras ‘acdeijstuADST’ seleccionan los nuevos atributos para los archivos: agregar solo (a), comprimido (c), sin volcado (d), formato de extensión (e), inmutable (i), registro de datos (j), eliminación segura (s), sin fusión de cola

El comando se ve así:

Eso establece el atributo de eliminación segura para la ruta especificada.

Terminando

Las banderas son más útiles cuando se limita quién puede cambiar un archivo. Al bloquear los archivos, puede evitar la manipulación o las ediciones accidentales a nivel del sistema de archivos. Sin escalar a la raíz o al propietario del archivo, estos privilegios no se pueden cambiar, por lo que son moderadamente seguros.

Experto Geek - Tu Guía en Tendencias Tecnológicas