Sistemas de Archivos EXT2, EXT3 y EXT4: Características, Ventajas y Comparativa

Clasificado en Informática

Escrito el en español con un tamaño de 6,69 KB

EXT2: El Sistema de Archivos Clásico de Linux

EXT2 (Second Extended File System) fue introducido en 1993 y se convirtió en el sistema de archivos estándar en los primeros días de Linux.

Características Principales de EXT2

  • Estabilidad: EXT2 es conocido por su gran solidez. En caso de una caída del sistema, la herramienta e2fsck realiza un análisis de los datos para asegurar la integridad.
  • Recuperación de Datos: e2fsck reconstruye los metadatos y los bloques de datos sueltos se almacenan en el directorio lost+found. Aunque este proceso puede llevar tiempo, garantiza la recuperación de la mayor cantidad de información posible.
  • Actualización: Facilidad para actualizar a sistemas más modernos como EXT3 y EXT4.

EXT3: Mejorando la Fiabilidad con Journaling

EXT3 (Third Extended File System) se basa en EXT2, añadiendo una característica crucial: el journaling.

Características de EXT3

  • Actualización Sencilla y Fiable: EXT3 comparte el formato en disco y los metadatos con EXT2, lo que permite una conversión rápida y segura.
  • Fiabilidad y Rendimiento: El journaling registra los cambios antes de que se escriban en el disco, lo que reduce significativamente el riesgo de corrupción de datos en caso de fallos. Existen diferentes niveles de journaling que afectan al equilibrio entre fiabilidad y rendimiento (por ejemplo, journal, ordered, writeback).

Conversión de EXT2 a EXT3

El proceso de conversión es relativamente sencillo (como usuario root):

  1. Crear el journal: tune2fs -j /dev/<dispositivo> (reemplaza <dispositivo> con el nombre correcto, por ejemplo, sdb1).
  2. Actualizar el tipo de sistema de archivos en /etc/fstab.
  3. Asegurarse de que los módulos ext3 y jbd (Journaling Block Device) estén integrados en el initrd (ramdisk inicial).

EXT4: El Estándar Moderno

EXT4 (Fourth Extended File System) es el sucesor de EXT3 y el sistema de archivos predeterminado en muchas distribuciones de Linux actuales.

Características de EXT4

  • Mayor Rendimiento: Ofrece tasas de transferencia significativamente superiores a EXT3.
  • Mayor Capacidad: Mientras que EXT3 soporta tamaños de sistema de archivos de hasta 32 TB, EXT4 admite hasta 1 Exabyte (EB).
  • Reducción del Tiempo de Borrado: Optimizado para el borrado eficiente de archivos grandes.
  • Preasignación Persistente: Permite a las aplicaciones reservar espacio en disco antes de usarlo, mejorando el rendimiento de bases de datos y aplicaciones multimedia. A diferencia de otros sistemas operativos que llenan el espacio reservado con ceros, EXT4 evita esta escritura innecesaria.
  • Más Subdirectorios: Permite un mayor número de subdirectorios que EXT2 y EXT3.
  • Checksums: Introduce checksums (sumas de verificación) en los metadatos del journal para mejorar la fiabilidad.
  • Desfragmentación en Línea: Permite la desfragmentación del sistema de archivos mientras está montado y en uso.
  • Asignación Retrasada (Delayed Allocation): Retrasa la asignación de bloques en el disco hasta el último momento posible, lo que ayuda a reducir la fragmentación y mejorar el rendimiento.
  • Soporte Undelete (limitado): Aunque no es una característica completa de recuperación de archivos borrados, EXT4 ofrece algunas mejoras en este aspecto en comparación con sus predecesores.
  • Comprobación Más Rápida: e2fsck es más rápido en EXT4 porque puede saltarse las partes no utilizadas del disco.
  • Timestamps de Nanosegundos: Ofrece marcas de tiempo con resolución de nanosegundos, extendiendo la vida útil del sistema de archivos hasta el año 2514.

Estructura Interna de los Sistemas de Archivos EXT

Directorio

Un directorio contiene, por cada fichero, información básica (como el nombre) y el número de inodo, que es un índice a las propiedades del fichero.

Área de Inodos

Contiene una tabla de inodos. Cada inodo (de 128 bytes) almacena información sobre un fichero o directorio: tipo de fichero, permisos, UID (identificador de usuario), GID (identificador de grupo), tamaño, fechas de creación y modificación, enlaces y punteros a los bloques de datos.

Bloques de Datos

Son los bloques (típicamente de 1 KB, 2 KB o 4 KB) que contienen los datos reales del fichero. El sistema de archivos intenta asignar bloques contiguos a un fichero para minimizar la fragmentación.

Herramientas y Comandos Útiles

  • ls -li: Muestra el número de inodo de los ficheros.
  • stat <nombre_de_archivo>: Muestra la información detallada de un inodo.
  • mount: Muestra los sistemas de archivos montados.
  • mount -t ext4 /dev/<dispositivo> <punto_de_montaje>: Monta un sistema de archivos EXT4 (ej: mount -t ext4 /dev/sdb1 /mnt).
  • umount <punto_de_montaje>: Desmonta un sistema de archivos (asegúrate de no estar en el directorio que se va a desmontar).
  • /etc/fstab: Archivo de configuración que define los sistemas de archivos que se montan automáticamente al inicio.
  • blkid: Muestra información sobre los dispositivos de bloque, incluyendo el UUID (Identificador Único Universal).
  • mount -a: Monta todos los sistemas de archivos definidos en /etc/fstab.

Ejemplo de una línea en /etc/fstab:

UUID=<UUID_del_dispositivo> /media/disco1 ext4 defaults 0 2

Donde:

  • UUID es el identificador único del dispositivo.
  • /media/disco1 es el punto de montaje.
  • ext4 es el tipo de sistema de archivos.
  • defaults son las opciones de montaje.
  • 0 indica si se debe hacer una copia de seguridad del sistema de archivos con dump (0 para no, 1 para sí).
  • 2 indica el orden en que fsck debe comprobar los sistemas de archivos (0 para no comprobar, 1 para el sistema de archivos raíz, 2 para otros).

Entradas relacionadas: