Cuando formatee particiones en un PC con Linux, verá una amplia variedad de opciones de sistemas de archivos. Estas opciones no tienen por qué ser abrumadoras. Si no está seguro de qué sistema de archivos de Linux utilizar, hay una respuesta sencilla.
La respuesta rápida: Utilice Ext4 si no está seguro
Entramos en materia y analizamos la diferencia entre los distintos sistemas de archivos en un momento, pero si no está seguro: utilice Ext4.
Ext4 es el sistema de archivos por defecto en la mayoría de las distribuciones de Linux por una razón. Es una versión mejorada del antiguo sistema de archivos Ext3. No es el sistema de archivos más vanguardista, pero eso es bueno: significa que Ext4 es sólido y estable.
En el futuro, las distribuciones de Linux cambiarán gradualmente hacia BtrFS. BtrFS es todavía de vanguardia y está en pleno desarrollo, por lo que querrá evitarlo en los sistemas de producción. El riesgo de corrupción de datos u otros problemas no vale la pena la potencial mejora en la velocidad.
Relacionado: ¿Cuál es la diferencia entre FAT32, exFAT y NTFS?
Tenga en cuenta, sin embargo, que este consejo de «usar Ext4» sólo se aplica a las particiones del sistema Linux y a otras particiones en el disco a las que sólo accede Linux. Si estás formateando una unidad externa que quieres compartir con otros sistemas operativos, no deberías usar Ext4 porque Windows, macOS y otros dispositivos no pueden leer sistemas de archivos Ext4. Usted querrá usar exFAT o FAT32 cuando formatee una unidad externa en Linux.
Si está configurando particiones en su unidad principal de arranque de Linux, también querrá crear una partición de intercambio de al menos unos pocos GBs de tamaño cuando configure esas particiones. Esta partición se utiliza como «espacio de intercambio». Es similar al archivo de paginación en Windows. Linux intercambia memoria al espacio de intercambio cuando su RAM está llena. Esta partición debe ser formateada como «swap» en lugar de con un sistema de archivos en particular.
¿Qué es el Journaling?
Una cosa que notará cuando elija entre los sistemas de archivos es que algunos de ellos están marcados como un sistema de archivos «journaling» y otros no. Esto es importante.
El registro en el diario está diseñado para evitar la corrupción de los datos en caso de caídas y pérdidas repentinas de energía. Digamos que su sistema está a medio camino de escribir un archivo en el disco y de repente se queda sin energía. Sin un diario, su computadora no tendría idea de si el archivo fue escrito completamente en el disco. El archivo permanecería allí en el disco, corrupto.
Con un diario, su ordenador anotaría que iba a escribir un determinado archivo en el disco en el diario, escribiría ese archivo en el disco, y luego eliminaría ese trabajo del diario. Si la energía se corta a mitad de la escritura del archivo, Linux revisaría el diario del sistema de archivos cuando se inicie y reanudaría cualquier trabajo parcialmente completado. Esto previene la pérdida de datos y la corrupción de archivos.
El registro en el diario disminuye un poco el rendimiento de la escritura en el disco, pero merece la pena en un ordenador de sobremesa o portátil. No es una sobrecarga tan grande como se podría pensar. El archivo completo no se escribe en el diario. En su lugar, sólo los metadatos del archivo, el inodo o la ubicación del disco se registran en el diario antes de que se escriba en el disco.
Todos los sistemas de archivos modernos admiten el registro en el diario, y usted querrá utilizar un sistema de archivos que admita el registro en el diario cuando configure un ordenador de sobremesa o portátil.
Los sistemas de archivos que no ofrecen el registro en el diario están disponibles para su uso en servidores de alto rendimiento y otros sistemas de este tipo en los que el administrador quiere exprimir el rendimiento adicional. También son ideales para las unidades flash extraíbles, donde no se desea la mayor sobrecarga y las escrituras adicionales del registro en el diario.
¿Cuál es la diferencia entre todos esos sistemas de archivos de Linux?
Mientras que Microsoft desarrolla Windows y Apple controla macOS, Linux es un proyecto de código abierto desarrollado por la comunidad. Cualquiera (o cualquier empresa) con la habilidad y el tiempo puede crear un nuevo sistema de archivos de Linux. Esa es una de las razones por las que hay tantas opciones. Aquí están las diferencias:
- Ext significa «Extended file system», y fue el primero creado específicamente para Linux. Ha tenido cuatro grandes revisiones. «Ext» es la primera versión del sistema de archivos, introducida en 1992. Fue una actualización importante del sistema de archivos Minix utilizado en ese momento, pero carece de características importantes. Muchas distribuciones de Linux ya no soportan Ext.
- Ext2 no es un sistema de archivos con registro en el diario. Cuando se introdujo, fue el primer sistema de archivos que soportaba atributos de archivo extendidos y unidades de 2 terabytes. El hecho de que Ext2 no tenga un diario significa que escribe menos en el disco, lo que lo hace útil para las memorias flash como las unidades USB. Sin embargo, los sistemas de archivos como exFAT y FAT32 tampoco utilizan el registro en el diario y son más compatibles con diferentes sistemas operativos, por lo que le recomendamos que evite Ext2 a menos que sepa que lo necesita por alguna razón.
- Ext3 es básicamente Ext2 con registro en el diario. Ext3 fue diseñado para ser compatible con Ext2, permitiendo que las particiones se conviertan entre Ext2 y Ext3 sin necesidad de formatearlas. Ha existido durante más tiempo que Ext4, pero Ext4 ha existido desde 2008 y está ampliamente probado. En este punto, es mejor usar Ext4.
- Ext4 también fue diseñado para ser compatible con versiones anteriores. Puedes montar un sistema de archivos Ext4 como Ext3, o montar un sistema de archivos Ext2 o Ext3 como Ext4. Incluye nuevas características que reducen la fragmentación de los archivos, permite volúmenes y archivos más grandes, y utiliza la asignación retardada para mejorar la vida de la memoria flash. Esta es la versión más moderna del sistema de archivos Ext y es la predeterminada en la mayoría de las distribuciones de Linux.
- BtrFS, pronunciado «Butter» o «Better» FS, fue diseñado originalmente por Oracle. Significa «B-Tree File System» y permite la agrupación de unidades, las instantáneas sobre la marcha, la compresión transparente y la desfragmentación en línea. Comparte una serie de ideas que se encuentran en ReiserFS, un sistema de archivos que algunas distribuciones de Linux solían utilizar por defecto. BtrFS está diseñado para romper con la serie Ext de sistemas de archivos. Ted Ts’o, el encargado de mantener el sistema de archivos Ext4, considera que Ext4 es una solución a corto plazo y cree que BtrFS es el camino a seguir. Es de esperar que BtrFS se convierta en el sistema por defecto en las distribuciones de Linux para servidores empresariales y de escritorio de los consumidores en los próximos años, a medida que se vaya probando.
- ReiserFS fue un gran salto adelante para los sistemas de archivos de Linux cuando se introdujo en 2001 e incluía muchas características nuevas que Ext nunca sería capaz de implementar. ReiserFS fue reemplazado por Reiser4, que mejoró muchas de las características que estaban incompletas o que faltaban en la versión inicial, en 2004. Pero el desarrollo de Reiser4 se estancó después de que el principal desarrollador, Hans Reiser, fuera enviado a prisión en 2008. Reiser4 todavía no está en el núcleo principal de Linux y es poco probable que lo consiga. BtrFS es la mejor opción a largo plazo.
Relacionado: Cómo instalar y usar ZFS en Ubuntu (y por qué querrías hacerlo)
- ZFS fue diseñado por Sun Microsystems para Solaris y ahora es propiedad de Oracle. ZFS admite muchas características avanzadas, como la agrupación de unidades, las instantáneas y la separación dinámica de discos. Cada archivo tiene una suma de comprobación, por lo que ZFS puede saber si un archivo está dañado o no. Sun ha creado ZFS bajo la licencia CDDL de Sun, lo que significa que no puede incluirse en el núcleo de Linux. Sin embargo, se puede instalar el soporte de ZFS en cualquier distribución de Linux. Ubuntu ahora también ofrece soporte oficial para ZFS a partir de Ubuntu 16.04. Ubuntu utiliza ZFS por defecto para los contenedores.
- XFS fue desarrollado por Silicon Graphics en 1994 para el sistema operativo SGI IRX, y fue portado a Linux en 2001. Es similar a Ext4 en algunos aspectos, ya que también utiliza la asignación retardada para ayudar con la fragmentación de archivos y no permite las instantáneas montadas. Puede ampliarse, pero no reducirse, sobre la marcha. XFS tiene un buen rendimiento cuando se trata de archivos grandes, pero tiene peor rendimiento que otros sistemas de archivos cuando se trata de muchos archivos pequeños. Puede ser útil para ciertos tipos de servidores que necesitan principalmente tratar con archivos grandes.
- JFS, o «Journaled File System», fue desarrollado por IBM para el sistema operativo IBM AIX en 1990 y posteriormente portado a Linux. Presenta un bajo uso de la CPU y un buen rendimiento tanto para los archivos grandes como para los pequeños. Las particiones JFS se pueden redimensionar dinámicamente, pero no se pueden reducir. Fue extremadamente bien planeado y tiene soporte en la mayoría de las distribuciones principales, sin embargo sus pruebas de producción en servidores Linux no son tan extensas como Ext, ya que fue diseñado para AIX. Ext4 es más comúnmente usado y está más ampliamente probado.
- Swap es una opción cuando se formatea una unidad, pero no es un sistema de archivos real. Se utiliza como memoria virtual y no tiene una estructura de sistema de archivos. No se puede montar para ver su contenido. El kernel de Linux utiliza la memoria Swap como «espacio de memoria virtual» para almacenar temporalmente los datos que no caben en la RAM. También se utiliza para hibernar. Mientras que Windows almacena su archivo de paginación como un archivo en su partición principal del sistema, Linux sólo reserva una partición vacía separada para el espacio de intercambio.
Relacionado: ¿Cuál es la diferencia entre FAT32, exFAT y NTFS?
- FAT16, FAT32 y exFAT: Los sistemas de archivos FAT de Microsoft son a menudo una opción cuando se formatea una unidad en Linux. Estos sistemas de archivos no incluyen un diario, por lo que son ideales para las unidades USB externas. Son un estándar de facto que todos los sistemas operativos -Windows, macOS, Linux y otros dispositivos- pueden leer. Esto los convierte en el sistema de archivos ideal para formatear una unidad externa que querrá utilizar con otros sistemas operativos. FAT32 es más antiguo. exFAT es la opción ideal, ya que admite archivos de más de 4 GB y particiones de más de 8 TB, a diferencia de FAT32.
Hay otros sistemas de archivos de Linux también, incluidos los sistemas de archivos diseñados específicamente para el almacenamiento flash en dispositivos integrados y en tarjetas SD. Pero estas son las opciones que verás con más frecuencia cuando uses Linux.