Metadatos asociados con el archivo de computadora que definen el comportamiento del sistema de archivos
Los atributos de archivo son un tipo de metadatos que describen y pueden modificar el comportamiento de los archivos o directorios en un sistema de archivos . Los atributos de archivo típicos pueden, por ejemplo, indicar o especificar si un archivo es visible, modificable, comprimido o cifrado. La disponibilidad de la mayoría de los atributos de archivo depende del soporte del sistema de archivos subyacente (como FAT , NTFS , ext4 ), donde los datos de los atributos deben almacenarse junto con otras estructuras de control. Cada atributo puede tener uno de dos estados: establecido y borrado. Los atributos se consideran distintos de otros metadatos, como fechas y horas, extensiones de nombre de archivo o permisos del sistema de archivos . Además de los archivos, las carpetas , los volúmenes y otros objetos del sistema de archivos pueden tener atributos.
DOS y Windows
Tradicionalmente, en DOS y Microsoft Windows , los archivos y carpetas aceptaban cuatro atributos: [1] [2] [3]
- Archivo (A): cuando se configura, indica que el archivo de alojamiento ha cambiado desde la última operación de copia de seguridad . El sistema de archivos de Windows configura este atributo en cualquier archivo que haya cambiado. El software de copia de seguridad tiene entonces la tarea de borrarlo tras una copia de seguridad completa o incremental (no diferencial) exitosa.
- Oculto (H): cuando se configura, indica que el archivo de alojamiento está oculto. Los comandos de MS-DOS
dir
y las aplicaciones de Windows como el Explorador de archivos no muestran archivos ocultos de manera predeterminada, a menos que se les solicite hacerlo. [4] - Sistema (S): cuando se configura, indica que el archivo de alojamiento es un archivo de sistema crítico que es necesario para que la computadora funcione correctamente. MS-DOS y Microsoft Windows lo utilizan para marcar archivos de sistema importantes. Los comandos de MS-DOS
dir
y las aplicaciones de Windows como el Explorador de archivos no muestran archivos de sistema de manera predeterminada, incluso cuando se muestran archivos ocultos, a menos que se les solicite que lo hagan. - Solo lectura (R): cuando se establece, indica que no se debe modificar un archivo. Al abrir el archivo, la API del sistema de archivos generalmente no otorga permiso de escritura a la aplicación solicitante, a menos que la aplicación lo solicite explícitamente. Los atributos de solo lectura en las carpetas generalmente se ignoran y se utilizan para otro propósito. [5] [6]
A medida que salieron nuevas versiones de Windows, Microsoft agregó al inventario de atributos disponibles en el sistema de archivos NTFS , [7] incluidos, entre otros: [8]
- Comprimido (C): cuando se configura, Windows comprime el archivo de alojamiento al almacenarlo. Para obtener más información, consulte NTFS § Compresión de archivos .
- Cifrado (E): cuando se configura, Windows cifra el archivo de alojamiento al almacenarlo para evitar el acceso no autorizado. Para obtener más información, consulte NTFS § Cifrado .
- No indexado por contenido (I): cuando se configura, el Servicio de indexación o la Búsqueda de Windows no incluyen el archivo de alojamiento en su operación de indexación.
Otros atributos que se muestran en la columna "Atributos" del Explorador de Windows [7] incluyen:
- Directorio (D): La entrada es un subdirectorio , que contiene sus propias entradas de archivos y directorios.
- Punto de análisis (L): el archivo o directorio tiene un punto de análisis asociado o es un enlace simbólico .
- Sin conexión (O): Los datos del archivo se mueven físicamente al almacenamiento sin conexión (almacenamiento remoto).
- Sparse (P): El archivo es un archivo disperso , es decir, su contenido está parcialmente vacío y no es contiguo.
- Temporal (T): El archivo se utiliza para almacenamiento temporal.
En DOS, OS/2 y Windows, el attrib
comando en cmd.exe y command.com se puede utilizar para cambiar y mostrar los cuatro atributos de archivo tradicionales. [3] [9] El Explorador de archivos en Windows puede mostrar los siete atributos mencionados, pero no puede establecer o borrar el atributo del Sistema. [5] Windows PowerShell , que se ha convertido en un componente de Windows 7 y posteriores, presenta dos comandos que pueden leer y escribir atributos: Get-ItemProperty
y Set-ItemProperty
. [10] Para cambiar un atributo en un archivo en Windows NT , el usuario debe tener permisos de sistema de archivos apropiados conocidos como Atributos de escritura y Atributos extendidos de escritura . [11]
Unix y POSIX
En sistemas Unix y similares, incluidos los sistemas que cumplen con POSIX , cada archivo tiene un "modo" que contiene indicadores de 9 bits que controlan los permisos de lectura, escritura y ejecución para cada uno de los propietarios, grupos y demás usuarios del archivo (consulte Permisos del sistema de archivos §Permisos tradicionales de Unix para obtener más detalles), además de los indicadores de bit setuid y setgid y un indicador de bit "sticky" . El modo también especifica el tipo de archivo (archivo normal, directorio o algún otro tipo especial).
4.4BSD y derivados
En 4.4BSD y 4.4BSD-Lite , los archivos y directorios (carpetas) aceptaban cuatro atributos que podían ser configurados por el propietario del archivo o el superusuario (los atributos "Usuario") y dos atributos que sólo podían ser configurados por el superusuario (los atributos "Sistema"): [12]
- (Usuario) No-dump : cuando se configura, indica que el archivo o directorio no se debe guardar durante una operación de respaldo .
- (Usuario y sistema) Inmutable : cuando se configura, indica que no se debe modificar el archivo o directorio. Los intentos de abrir el archivo para escritura, crear un archivo dentro del directorio, eliminar un archivo del directorio, cambiar el nombre de un archivo dentro del directorio, cambiar el nombre del archivo o directorio o eliminar el archivo o directorio fallarán con un error de permisos.
- (Usuario y Sistema) Solo agregar : cuando se configura, indica que solo se debe agregar contenido al archivo.
- (Usuario) Opaco : cuando se configura en un directorio, indica que el directorio es opaco cuando se ve a través de una pila de unión .
FreeBSD agregó algunos atributos adicionales, [13] también soportados por DragonFly BSD : [14]
- (Usuario y sistema) No desvincular : cuando se configura, indica que no se debe cambiar el nombre ni eliminar el archivo o directorio. Los intentos de cambiar el nombre o eliminar el archivo o directorio fallarán y se generará un error de permisos.
FreeBSD también soporta: [13]
- (Sistema) No archivar : cuando se configura, indica que el archivo o directorio no se debe archivar.
- (Sistema) Instantánea : cuando se configura, indica que el archivo o directorio es un archivo de instantánea. Este atributo lo mantiene el sistema y no puede configurarlo ni siquiera el superusuario.
Mientras que DragonFly BSD admite: [14]
- (Usuario y sistema) Sin historial : cuando se configura, indica que no se debe conservar el historial del archivo o directorio.
- (Usuario) Swapcache : cuando se configura, indica que los datos limpios del sistema de archivos para el archivo, o para el directorio y todo lo que se encuentra debajo del directorio, deben almacenarse en caché en el espacio de intercambio en una unidad de estado sólido .
- (Sistema) Swapcache : cuando se configura, indica que los datos limpios del sistema de archivos para el archivo, o para el directorio y todo lo que se encuentra debajo del directorio, no deben almacenarse en caché en el espacio de intercambio en una unidad de estado sólido.
- (Sistema) Archivado : cuando se configura, indica que el archivo o directorio se puede archivar.
NetBSD agregó otro atributo, [15] también compatible con OpenBSD : [16]
- (Sistema) Archivado : cuando se configura, indica que el archivo o directorio está archivado.
macOS agregó tres atributos:
- (Usuario) Oculto : cuando se configura, indica que el archivo o directorio no debe, de manera predeterminada, mostrarse en la GUI; sin embargo, ls lo mostrará. [17]
- (Sistema) Restringido : cuando se configura, indica que el archivo o directorio estará protegido por la Protección de integridad del sistema.
- (Usuario y sistema) Comprimido : atributo de solo lectura para archivos comprimidos mediante compresión HFS+
En estos sistemas, los comandos chflags
y ls
se pueden utilizar para cambiar y mostrar atributos de archivos. Para cambiar un atributo de "usuario" en un archivo en sistemas operativos derivados de 4.4BSD, el usuario debe ser el propietario del archivo o el superusuario; para cambiar un atributo de "sistema", el usuario debe ser el superusuario.
Linux
El sistema operativo Linux puede admitir una amplia gama de atributos de archivo que pueden enumerarse mediante el lsattr
comando y modificarse, cuando sea posible, mediante el chattr
comando. Los programas pueden examinar y modificar atributos mediante operaciones ioctl . [18]
Muchos sistemas de archivos de Linux solo admiten un conjunto limitado de atributos y ninguno de ellos admite todos los atributos que chattr
pueden cambiar. Los sistemas de archivos que admiten al menos algunos atributos incluyen ext4 , XFS y btrfs .
OpenSolaris y derivados
En 2007, se agregó a OpenSolaris soporte para "atributos del sistema" (en los que el sistema operativo define el significado, a diferencia de los atributos de archivo extendidos generales) para respaldar el servidor CIFS. [19] Desde entonces, se ha trasladado a las versiones de Oracle Solaris 11 y al proyecto de código abierto illumos .
En esta implementación, se puede configurar una amplia gama de atributos mediante el chmod
comando [20] [21] y enumerarlos mediante el ls
comando. [22] [23]
Los programas pueden examinar y alterar atributos utilizando las funciones getattrat
y . [24] [25]setattrat
Actualmente, el sistema de archivos ZFS admite todos los atributos definidos y, a partir de Oracle Solaris 11.2, el sistema de archivos tmpfs admite un subconjunto de atributos. [26]
Véase también
Referencias
- ^ "Definición de: atributo de archivo". PC Magazine . Ziff Davis . Consultado el 14 de octubre de 2020 .
- ^ "Atributos de archivo". Computer Hope . Consultado el 2 de diciembre de 2012 .
- ^ ab "En Windows, ¿qué son los atributos de archivo y cómo puedo cambiarlos?". Base de conocimiento . Universidad de Indiana . 11 de octubre de 2011 . Consultado el 2 de diciembre de 2012 .
- ^ "¿Qué es un archivo oculto?". Ayuda de Windows 7. Microsoft . Consultado el 2 de diciembre de 2012 .
- ^ ab "No se pueden ver ni cambiar los atributos de solo lectura ni los atributos del sistema de las carpetas en Windows Server 2003, Windows XP, Windows Vista o Windows 7". Soporte técnico de Microsoft . Microsoft. 31 de mayo de 2012 . Consultado el 2 de diciembre de 2012 .
- ^ "¿Por qué la propiedad de solo lectura en las carpetas es tan extraña?".
- ^ ab "Constantes de atributos de archivo". MSDN . Microsoft . Consultado el 17 de julio de 2018 .
- ^ "CÓMO: Utilizar el script de administración de atributos de archivo (Fileattributes.pl) en Windows 2000". Soporte técnico de Microsoft . Microsoft . Consultado el 2 de diciembre de 2012 .
- ^ "Definición de: DOS Attrib". PC Magazine . Ziff Davis . Archivado desde el original el 2 de marzo de 2012 . Consultado el 2 de diciembre de 2012 .
- ^ "Usar un cmdlet de PowerShell para trabajar con atributos de archivo". Hola, Scripting Guy! Blog . Microsoft. 26 de enero de 2011 . Consultado el 3 de diciembre de 2012 .
- ^ "Cómo configurar, ver, cambiar o eliminar permisos especiales para archivos y carpetas en Windows XP". Soporte técnico de Microsoft . Microsoft. 7 de mayo de 2007. Consultado el 2 de diciembre de 2012 .
- ^
chflags(2)
– Manual de llamadas al sistema BSD - ^ ab
chflags(2)
– Manual de llamadas al sistema de FreeBSD - ^ ab
chflags(2)
– Manual de números de error y llamadas al sistema DragonFly BSD - ^
chflags(2)
– Manual de llamadas al sistema NetBSD - ^
chflags(2)
– Manual de llamadas al sistema OpenBSD - ^
chflags(2)
– Manual de llamadas del sistema de Darwin y macOS - ^
ioctl_iflags(2)
– Manual del programador de Linux – Llamadas al sistema - ^ Shellenbaum, Mark. "Extensible Attribute Interfaces [PSARC/2007/315]". Archivo de material de OpenSolaris ARC . illumos.org . Consultado el 10 de marzo de 2023 .
- ^ "chmod(1)". Biblioteca de referencia de Oracle Solaris 11.4: páginas del manual, sección 1: Comandos de usuario . Oracle . Consultado el 10 de marzo de 2023 .
- ^ "chmod(1)". Páginas del manual de illumos . illumos.org . Consultado el 10 de marzo de 2023 .
- ^ "ls(1)". Biblioteca de referencia de Oracle Solaris 11.4: páginas del manual, sección 1: Comandos de usuario . Oracle . Consultado el 10 de marzo de 2023 .
- ^ "ls(1)". Páginas del manual de illumos . illumos.org . Consultado el 10 de marzo de 2023 .
- ^ "getattrat(3c)/setattrat(3c)". Biblioteca de referencia de Oracle Solaris 11.4: páginas del manual, sección 3: Funciones básicas de la biblioteca . Oracle . Consultado el 10 de marzo de 2023 .
- ^ "getattrat(3c)/setattrat(3c)". Páginas del manual de illumos . illumos.org . Consultado el 10 de marzo de 2023 .
- ^ "sysattr(7)". Biblioteca de referencia de Oracle Solaris 11.4: páginas del manual, sección 7 . Oracle . Consultado el 10 de marzo de 2023 .
Enlaces externos
- Definición de: Atributo DOS Archivado el 2 de marzo de 2012 en Wayback Machine en PC Magazine
- Archivos ocultos en sistemas operativos tipo Unix en Wayback Machine (archivado el 17 de octubre de 2007)
- Constantes de atributos de archivo en C (- runtime-library ), por Microsoft Learn, 26/10/2022
- Constantes de atributos de archivo en C++ ( Win32 ) , por Microsoft Learn, 09/06/2023