Introducción a los sistemas de archivos de Linux

Introducción a los sistemas de archivos de Linux

El sistema de archivos es una de las primeras cosas en las que un administrador Linux debe saber. En Windows, el sistema por defecto es NTFS, mientras que en Linux tenemos diferentes para diferentes opciones.

Un sistema de archivos sirve para estructurar la información en el disco duro o en otra unidad de almacenamiento como un disco portátil, memoria USB, entre otros.

Antes que nada explicaremos algunos conceptos básicos sobre estos sistemas de almacenamiento.

Journaling, o sistema de registros diarios

Un sistema de archivos es mucho mas confiable cuando tiene un sistema de registro diario o Journaling, para este articulo usaremos la palabra Journaling para especificar este caso.

El Journaling provee consistencia al guardar datos, no necesariamente prevee corrupción de datos o perdida del mismo, en caso de una falla eléctrica, mientras se escribe un archivo, este puede terminar en un archivo corrupto, el Journaling intenta prevenir esto, guardando parte del archivo en otra área del disco duro y tomando un registro de donde fue guardado, para luego guardarlo en el lugar donde debería ir, para terminar la tarea de escritura de archivo.

Edición de archivos

Los que usan Windows (usuarios de sistemas de archivo NTFS o FAT) sabrán que no es posible modificar archivos cuando están abiertos. Esta restricción no existe en un sistema de archivos en Linux, debido a que estos son indexados con un numero llamado inodo, en cada inodo hay diferentes atributos asociados con el archivo, tales como permisos de archivo, nombre, etc. Cuando se elimina un archivo lo que sucede es que el inodo es separado del nombre de archivo haciéndolo inubicable, pero, si otra aplicación esta usándolo, se mantiene el enlace del inodo al sistema operativo y este continua siendo actualizado. Un archivo no es totalmente eliminado hasta que todos sus enlaces de inodos hayan sido eliminados.

Fragmentación

Otra practica común de Windows es que el sistema de archivos se fragmenta, es decir, los datos se guardan en áreas separadas del disco, pero cuando se eliminan algunos archivos estos dejan espacios en blanco, haciendo que hayan mas lecturas y escrituras del disco en diferentes áreas.

Sistemas de archivos

Ext2

Conocido como Second Extended Filesystem, fue usado por mucho tiempo en Linux, incluso, hoy en día se sigue usando para algunos sistemas legados o plataformas antiguas.

Su principal inconveniente fue que no permitía el Journaling, que nos daba la opción de tener un control en caso de que falle por alguna razón. Otro inconveniente era de que no soportaba mas de una partición de 4Tb en el disco. Esto no parece ser un problema para los administradores de servidores chicos o medianos, sin embargo si lo fue para administradores que almacenan mucha información. De cualquier forma Ext2 se dejó como una opción, al salir su sucesor, Ext3

Ext3

Hasta el momento de esta publicación, Julio 2015, Ext3 sigue siendo uno de los sistemas de archivos mas usados en Linux, debido a que muchas distribuciones la traían por defecto, esta figura esta cambiando progresivamente, debido a que los nuevos filesystems traen Ext4 que es la versión mejorada de este mismo. La principal ventaja de Ext3 es el Journaling que se adiciono, esto es un gran avance, con respecto a Ext2. Así mismo, Ext3 provee compatibilidad con Ext2 y herramientas para migrar de Ext2 a Ext3.

ReiserFS

Este fue un super filesystem o sistema de archivo, y fue la competencia directa de Ext3, sin embargo hoy en día es algo incierto, debido a que su creador tuvo problemas de homicidio. Dado que el avance del mismo fue detenido, no es posible saber si este proyecto seguirá o no. Se considera que ReiserFS es mas rápido en el manejo de archivos, sin embargo se sabe que tras una falla eléctrica el sistema podría ser irrecuperable, debido a que su sistema de Journaling es diferente.

Ext4

Desde las ultimas versiones de SUSE, Ubuntu y CentOS, (las distribuciones de Linux mas usadas, hoy en día) esta disponible como sistema de archivo por defecto, entre las ventajas mas destacadas se encuentran la velocidad del filesystem, el Journaling, la compatibilidad con versiones anteriores como Ext2 y Ext3 entre otros. De hecho si se debe elegir uno de estos filesystems esta seria la opción recomendada.

Reiser4

Esta es la ultima versión de Reiser, tiene varias ventajas contra su antecesor, ReiserFS, entre las que destacan un Journaling mas eficiente, también posee mayor velocidad con el manejo de archivos chicos, la misma compañía creadora de Reiser indica que su rendimiento es 8 veces mayor comparado con Ext2 en el manejo de archivos.

XFS

Un sistema de archivos que ya tiene tiempo entre nosotros, desarrollado por Silicon Graphics, fue pensado para trabajar nativamente en plataformas de 64 bits, también puede trabajar sobre 32. Este filesystem provee de jornaling, se aconseja su uso para archivos de gran tamaño. De hecho es la opcion por defecto cuando se instala CentOS7

Es posible montar un disco o particion NTFS en Linux?

Algo que no debemos olvidar es que Linux puede trabajar con NTFS, el sistema de particionamiento de Windows, sin embargo no es el mas indicado, de hecho, si tenemos una partición o disco con NTFS sera posible montarlo en Linux como un disco adicional. Lamentablemente lo inverso, de Linux a Windows no ocurre.

Tienes algun caso con tu sistema de archivos? conoces algunos otros beneficios? déjanos un comentario

Deja un comentario

17 − dieciseis =