XFS
XFS | ||
---|---|---|
Desarrollador | Silicon Graphics | |
Nombre completo | XFS | |
Sistemas operativos compatibles | IRIX, Linux, FreeBSD | |
Introducción | 1994 (IRIX v5.3) | |
Estructuras | ||
Contenido del directorio | Árbol-B+s | |
Límites | ||
Máxima dimensión de archivo | 8 exabytes | |
Tamaño máximo del nombre de archivo | 255 bytes | |
Tamaño máximo del volumen | 16 exabytes | |
Características | ||
Fechas registradas | Sí | |
Bifurcaciones | Sí | |
Permisos de acceso a archivos | Sí | |
Compresión transparente | No | |
Cifrado transparente | No | |
XFS es un sistema de archivos de 64 bits con journaling de alto rendimiento creado por SGI (antiguamente Silicon Graphics Inc.) para su implementación de UNIX llamada IRIX. En mayo de 2000, SGI liberó XFS bajo una licencia de código abierto.
XFS se incorporó a Linux a partir de la versión 2.4.25, cuando Marcelo Tosatti (responsable de la rama 2.4) lo consideró lo suficientemente estable para incorporarlo en la rama principal de desarrollo del kernel. Los programas de instalación de las distribuciones de SuSE, Gentoo, Mandriva, Slackware, Fedora Core, Ubuntu y Debian ofrecen XFS como un sistema de archivos más. En FreeBSD el soporte para solo-lectura de XFS se añadió a partir de diciembre de 2005 y en junio de 2006 un soporte experimental de escritura fue incorporado a FreeBSD-7.0-CURRENT.
Historia
antiguo de los sistema de archivos con journaling disponible para la plataforma UNIX, tiene un código maduro, estable y bien depurado. Su desarrollo lo comenzó en 1993 la compañía Silicon Graphics Inc., y apareció por primera vez en el IRIX 5.3 en 1994. El sistema de archivos fue liberado bajo la GNU General Public License en mayo de 2000 y posteriormente portado a GNU/Linux, apareciendo por primera vez en una distribución entre el 2001 y el 2002.
Características
Capacidad
XFS soporta un sistema de archivos de hasta 8 exabytes, aunque esto puede variar dependiendo de los límites impuestos por el sistema operativo. En sistemas GNU/Linux de 32 bits, el límite es 16 terabytes.
Registro de bitácora (journaling)
XFS provee soporte para llevar un registro (journaling), donde los cambios al sistema de archivos primero son escritos a un diario o journal antes de que se actualicen los datos del disco. El journal es un buffer circular de bloques del disco que no son parte del sistema de archivos. En XFS el registro (journal) contiene entradas 'lógicas' que describen a un alto nivel las operaciones que se están realizando, al contrario de otros sistemas de archivo con un registro (journal) 'físico', que guardan una copia de los bloques modificados durante cada transacción. Las actualizaciones del registro (journal) se realizan asincrónicamente para evitar una baja en el rendimiento. En el caso de una caída repentina del sistema, las operaciones inmediatamente anteriores a la caída pueden ser terminadas, garantizando así la consistencia del sistema. La recuperación se realiza automáticamente a la hora del montaje del sistema de archivos y la velocidad de recuperación es independiente del tamaño del sistema de archivos. Incluso si alguna información que fuese modificada inmediatamente antes de la caída del sistema no fuese escrita al disco, XFS se encarga de borrar todos los bloques de datos sin escribir, eliminando así cualquier compromiso de seguridad.
Grupos de asignación
Los sistemas de archivos XFS están particionados internamente en grupos de asignación, que son regiones lineares de igual tamaño dentro del sistema de archivos. Los archivos y los directorios pueden crear grupos de asignación. Cada grupo gestiona sus inodos y su espacio libre de forma independiente, proporcionando escalabilidad y paralelismo — múltiples hilos pueden realizar operaciones de E/S simultáneamente en el mismo sistema de archivos.
LVM
Es posible aumentar la capacidad de sistemas de ficheros XFS: xfsgrowfs es ideal para particiones LVM