1. Comparación de algunos sistemas de archivos

Durante la instalación, Usted puede elegir diferentes sistemas de archivos para sus particiones de manera tal que se formatearán utilizando algoritmos diferentes.

A menos que sea un especialista, la elección de un sistema de archivos no es obvia. Le proponemos una presentación rápida de los tres sistemas de archivos más corrientes, los cuales están disponibles en su totalidad bajo Mandriva Linux.

1.1. Diferentes sistemas de archivos utilizables

1.1.1. Ext2

El Segundo sistema de archivos extendido (Second Extended Filesystem, su forma abreviada es ext2FS, o simplemente ext2) ha sido el sistema de archivos predeterminado de GNU/Linux por muchos años. Reemplazó al Sistema de archivos extendido (Extended File System) (de allí, el término “Segundo”). ext2 corrigió ciertos problemas y limitaciones que tenía su predecesor.

ext2 respeta los estándares comunes para los sistemas de archivos tipo UNIX®. Desde que fue concebido, se diseñó para evolucionar, a la vez que ofrece una gran robustez y buen rendimiento.

[Nota]Nota

Debe estar desmontado para poder cambiarle el tamaño.

1.1.2. Ext3

Como su nombre lo sugiere, el Tercer sistema de archivos extendido (Third Extended File System) es el sucesor de ext2. Es compatible con este último pero está mejorado agregando la característica transaccional.

Una de las mayores fallas de los sistemas de archivos “tradicionales”, como ext2, es la baja tolerancia a caídas del sistema abruptas (fallas de energía o programas que se cuelgan). En general, una vez que se vuelve a iniciar el sistema, dichos eventos implican un examen prolongado de la estructura del sistema de archivos e intentos para corregir errores, que algunas veces resulta en una corrupción aun mayor del sistema de archivos. Esta corrupción podría causar una pérdida total o parcial de los datos grabados.

Las transacciones responden a este problema. Para simplificar, digamos que la idea es grabar las acciones (tales como el guardar un archivo) antes de llevarlas a cabo efectivamente. Podemos comparar su funcionamiento al de un capitán de un bote que anota en su cuaderno de bitácora los eventos diarios. El resultado: un sistema de archivos coherente siempre. Y si ocurren problemas, la verificación es muy rápida y las reparaciones eventuales, muy limitadas. Entonces, el tiempo que toma verificar un sistema de archivos ya no es más proporcional al tamaño del mismo sino al uso verdadero que se hace del mismo.

Por lo tanto, ext3 ofrece la tecnología de sistemas de archivos transaccional, a la vez que mantiene la estructura de ext2, asegurando una compatibilidad excelente. Esto hace que sea fácil cambiar entre ext2 y ext3.

[Nota]Nota

Al igual que ext2, debe estar desmontado para poder cambiarle el tamaño.

1.1.3. ReiserFS

A diferencia de ext3, reiserfs se escribió desde cero. Es un sistema de archivos transaccional como ext3, pero su estructura interna es radicalmente diferente ya que utiliza conceptos de árboles binarios, inspirado en el software de bases de datos y también tiene un tamaño de bloque variable, lo que lo hace óptimo para el uso con varios (miles o cientos de miles) archivos pequeños. También tiene un buen rendimiento con archivos grandes, adaptándose así a usos múltiples.

[Nota]Nota

Se le puede cambiar el tamaño “al vuelo”, sin desmontar el sistema de archivos.

1.1.4. JFS

JFS es el sistema de archivos transaccional diseñado y utilizado por IBM. Al principio era cerrado y propietario, IBM decidió recientemente abrir el acceso al movimiento de software libre. Su estructura interna es muy similar a la de reiserfs.

[Aviso]Aviso

No se le puede cambiar el tamaño bajo GNU/Linux.

1.1.5. XFS

XFS es el sistema de archivos transaccional diseñado por SGI y utilizado en su sistema operativo Irix. Al principio era propietario y cerrado, SGI decidió abrir el acceso al movimiento de software libre. Su estructura de datos tiene un montón de características diferentes, tales como soporte para ancho de banda en tiempo real, extensiones, y sistemas de archivos distribuidos (clustered file systems), pero no en la versión libre.

[Aviso]Aviso

Con GNU/Linux sólo se le puede cambiar el tamaño por uno mayor. No se puede reducir. El cambio de tamaño sólo se puede realizar sobre un sistema de archivos montado.

1.2. Diferencias entre esos sistemas de archivos

Tabla 4.1. Características de los sistemas de archivos

 Ext2Ext3ReiserFSJFSXFS
EstabilidadExcelenteMuy BuenaBuenaMediaBuena
Herramientas para recuperar archivos borradosSí (complejas)Sí (complejas)NoNoNo
Tiempo de re-arranque luego de una caídaLargo, incluso muy largoCortoMuy cortoMuy cortoMuy corto
Estado de los datos en caso de una caídaEn general, bueno, pero existe un riesgo alto de pérdida parcial o total de los datosMuy buenoMedio[a]Muy bueno.Muy bueno.
Soporte para ACLNoNo

[a] Es posible mejorar los resultados en la recuperación de una caída haciendo transaccionales a los datos y no sólo a los metadatos, añadiendo la opción data=journal en el archivo /etc/fstab.

El tamaño máximo de un archivo depende de muchos parámetros (por ejemplo, el tamaño del bloque para ext2/ext3), y es probable que evolucione dependiendo de la versión del núcleo y la arquitectura.

En el núcleo 2.6.X el límite del dispositivo de bloques se puede extender usando un núcleo compilado con el soporte para dispositivos de bloque grandes habilitado (CONFIG_LDB=y). Para más información, consulte Añadiendo soporte para tamaños de archivo arbitrarios a la especificación UNIX simple, Soporte para archivos grandes en Linux, y Dispositivos de bloque grandes. Con esto y el soporte adecuado en el sistema de archivos se puede llegar hasta muchos TB sin trucos especiales del sistema de archivos como los que utiliza JFS para el tamaño del sistema de archivos.

1.3. ¿Y con respecto al rendimiento?

Siempre es muy difícil comparar el rendimiento entre los sistemas de archivos. Todas las pruebas tienen sus limitaciones y los resultados se deben interpretar con cuidado, las comparaciones hechas hace una semana o un mes ya son antiguas. No olvide que el hardware de hoy día (especialmente en lo que concierne a las capacidades de los discos rígidos) ha nivelado bastante las diferencias entre los diferentes sistemas de archivos.

Cada sistema de archivos ofrece ventajas y desventajas. De hecho, todo depende de cómo utilice su máquina. Una simple máquina de escritorio estará bien con ext2. Para un servidor, se prefiere un sistema de archivos transaccional como ext3. Tal vez debido a su génesis reiserfs es más adecuado para un servidor de base de datos. JFS se prefiere en los casos donde el rendimiento del sistema de archivos es la cuestión principal. XFS es interesante si necesita cualquiera de las características avanzadas que ofrece. Para un uso “normal”, los cuatro sistemas de archivos dan aproximadamente los mismos resultados y todos ellos tienen diferentes opciones para ajustar el sistema de archivos para un uso en particular. Por favor, consulte la documentación del sistema de archivos para más información.