Cómo habilitar agrupación de almacenamiento y creación de reflejo utilizando Btrfs para Linux

Si tiene varios discos duros en su sistema Linux, no tiene que tratarlos como diferentes dispositivos de almacenamiento. Con Btrfs, puede crear fácilmente un grupo de almacenamiento de esos discos duros.

Si tiene varios discos duros en su sistema Linux, no tiene que tratarlos como diferentes dispositivos de almacenamiento.  Con Btrfs, puede crear fácilmente un grupo de almacenamiento de esos discos duros.
Anuncio

Si tiene varios discos duros en su sistema Linux, no tiene que tratarlos a todos como diferentes dispositivos de almacenamiento. Con Btrfs, puede crear fácilmente un grupo de almacenamiento de esos discos duros.

Bajo ciertas condiciones, incluso puede habilitar la duplicación para que no pierda sus datos debido a una falla en el disco duro. Con todo configurado, puede lanzar lo que quiera en la piscina y aprovechar al máximo el espacio de almacenamiento que tiene.

No hay una utilidad de configuración de GUI que pueda hacer todo esto más fácil (aún), pero aún es bastante fácil de hacer con la línea de comando. Le guiaré por una configuración simple para usar varios discos duros juntos.

¿Qué es Btrfs?

Btrfs (llamado sistema de archivos B-tree, "Butter FS", o "Better FS") es un próximo sistema de archivos Ext4 vs. Btrfs: ¿Por qué estamos haciendo el cambio? [Linux] Ext4 vs. Btrfs: ¿Por qué estamos haciendo el cambio? [Linux] Honestamente, una de las últimas cosas que las personas miran es qué sistema de archivos se está utilizando. Los usuarios de Windows y Mac OS X tienen aún menos razones para buscar, porque realmente solo tienen una ... Leer más que incorpora muchas características diferentes en el nivel del sistema de archivos que normalmente solo están disponibles como paquetes de software por separado. Si bien Btrfs tiene muchas características notables (como las instantáneas del sistema de archivos), las dos que veremos en este artículo son agrupación de almacenamiento y creación de reflejos.

Si no está seguro de qué es un sistema de archivos, eche un vistazo a esta explicación de algunos sistemas de archivos para Windows. Qué es un sistema de archivos y cómo puede averiguar qué se ejecuta en sus discos. Qué es un sistema de archivos y cómo puede averiguarlo. Lo que funciona en tus discos Leer más. También puedes ver esta buena comparación de varios sistemas de archivos. De FAT a NTFS a ZFS: Sistemas de archivos desmitificados [MakeUseOf Explains] De FAT a NTFS A ZFS: Sistemas de archivos desmitificados [MakeUseOf Explains] ¿De verdad sabes lo que hace tu disco duro cada vez que ¿Lees un archivo o escribes uno? Nuestros discos duros ahora pueden almacenar grandes cantidades de datos, y ese espacio masivo ... Lea más para tener una mejor idea de las diferencias entre los sistemas de archivos existentes.

Btrfs todavía se considera "no estable" por muchos, pero la mayoría de las características ya son lo suficientemente estables para uso personal; son solo algunas características selectas donde puede encontrar algunos resultados no deseados.

Si bien Btrfs pretende ser el sistema de archivos predeterminado para Linux en algún momento en el futuro, es mejor utilizar ext4 para las configuraciones de discos duros individuales o para las configuraciones que no necesitan agrupamiento de almacenamiento ni creación de reflejos.

Puesta en común de sus unidades

Para este ejemplo, vamos a usar una configuración de cuatro discos duros. Hay dos discos duros (/ dev / sdb y / dev / sdc) con 1TB cada uno, y otros dos discos duros (/ dev / sdd y / dev / sde) con 500 GB para un total de cuatro discos duros con un total de 3TB de almacenamiento.

También puede suponer que tiene otro disco duro (/ dev / sda) de algún tamaño arbitrario que contiene su gestor de arranque y su sistema operativo. No nos preocupamos por / dev / sda y solo estamos combinando los otros cuatro discos duros para propósitos de almacenamiento adicional.

Crear un sistema de archivos

btrfs_gparted
Para crear un sistema de archivos Btrfs en uno de sus discos duros, puede usar el comando:

sudo mkfs.btrfs /dev/sdb

Por supuesto, puede reemplazar / dev / sdb con el disco duro real que desea usar. Desde aquí, puede agregar otros discos duros al sistema Btrfs para convertirlo en una única partición que abarca todos los discos duros que agrega. Primero, monte el primer disco duro Btrfs con el comando:

sudo mount /dev/sdb /mnt

Luego, ejecuta los comandos:

sudo mkfs.btrfs /dev/sdc mkfs.btrfs /dev/sdd mkfs.btrfs /dev/sde

Ahora, puede agregarlos al primer disco duro usando los comandos:

sudo btrfs device add /dev/sdc /mnt btrfs device add /dev/sdd /mnt btrfs device add /dev/sde /mnt

Si tenía algunos datos almacenados en el primer disco duro, querrá que el sistema de archivos lo equilibre entre todos los discos duros recién agregados. Puedes hacer esto con el comando:

sudo btrfs filesystem balance /mnt

Alternativamente, si sabe incluso antes de comenzar que desea que un sistema de archivos Btrfs abarque todos los discos duros, simplemente puede ejecutar el comando:

sudo mkfs.btrfs -d single /dev/sdb /dev/sdc /dev/sdd /dev/sde

Por supuesto, esto es mucho más fácil, pero necesitarás usar el método mencionado anteriormente si no los agregas todos de una vez.

Notarás que usé una bandera: "-d single". Esto es necesario porque quería una configuración RAID 0 (donde los datos se dividen entre todos los discos duros pero no se produce duplicación), pero el perfil "único" es necesario cuando los discos duros son de diferentes tamaños. Si todos los discos duros tuvieran el mismo tamaño, podría usar la bandera "-d raid0". El indicador "-d", por cierto, representa datos y le permite especificar la configuración de datos que desea. También hay una bandera "-m" que hace exactamente lo mismo para los metadatos.

Además de esto, también puedes habilitar RAID 1 usando "-d raid1" que duplicará los datos en todos los dispositivos, por lo que usar este indicador durante la creación del sistema de archivos Btrfs que abarca todos los discos duros significa que solo obtendrás 500GB de espacio utilizable. como los otros tres discos duros se utilizan para duplicar.

Por último, puede habilitar RAID 10 usando "-d raid10". Esto hará una combinación de ambos, RAID 0 y RAID 1, por lo que le dará 1, 5 TB de espacio utilizable, ya que los dos discos duros de 1TB están emparejados en la duplicación y los dos discos duros de 500GB están emparejados en la duplicación.

Conversión de un sistema de archivos

btrfs_harddiskstack
Si tiene un sistema de archivos Btrfs que desea convertir a una configuración RAID diferente, eso es fácil de hacer. Primero, monte el sistema de archivos (si no lo está) utilizando el comando:

sudo mount /dev/sdb1 /mnt

Luego, ejecuta el comando:

sudo btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt

Esto cambiará la configuración a RAID 1, pero puede reemplazarlo con la configuración que desee (siempre que esté permitido, por ejemplo, no puede cambiar a RAID 10 si no tiene al menos cuatro discos duros) . Además, el indicador -mconvert es opcional si solo le preocupan los datos, pero no los metadatos.

Si se produce una falla de disco duro

Si falla un disco duro, tendrá que eliminarlo del sistema de archivos para que el resto de las unidades combinadas funcionen correctamente. Monte el sistema de archivos con el comando:

sudo mount -o degraded /dev/sdb /mnt

Luego arregle el sistema de archivos con:

sudo btrfs device delete missing /mnt

Si no tiene habilitado RAID 1 o RAID 10, ahora se pierde la información que estaba en el disco duro fallido.

Extracción de una unidad de disco duro del sistema de archivos

Finalmente, si desea eliminar un dispositivo de un sistema de archivos Btrfs, y el sistema de archivos está montado en / mnt, puede hacerlo con el comando:

sudo btrfs device delete /dev/sdc /mnt

Por supuesto, reemplace / dev / sdc con el disco duro que desea eliminar. Este comando llevará algo de tiempo porque necesita quitar todos los datos del disco duro que se está eliminando, y también fallará si no hay suficiente espacio en los otros discos duros restantes.

Montaje automático

btrfs_fstab
Si desea que el sistema de archivos Btrfs se monte automáticamente, puede colocarlo en su archivo / etc / fstab:

sudo /dev/sdb /mnt btrfs device=/dev/sdb, device=/dev/sdc, device=/dev/sdd, device=/dev/sde 0 0

Opciones de montaje

¡Un consejo adicional! Puede optimizar el rendimiento de Btrfs en su archivo / etc / fstab bajo las opciones de montaje para el sistema de archivos Btrfs. Para matrices de almacenamiento grandes, estas opciones son las mejores: compress-force=zlib, autodefrag, nospace_cache . Específicamente, compress = zlib comprimirá todos los datos para que pueda aprovechar al máximo el espacio de almacenamiento que tiene. Para el registro, los usuarios de SSD pueden usar estas opciones: noatime, compress=lzo, ssd, discard, space_cache, autodefrag, inode_cache . Estas opciones van junto con las especificaciones del dispositivo, por lo que una línea completa en / etc / fstab para los usuarios de SSD se vería así:

sudo /dev/sdb /mnt btrfs device=/dev/sdb, device=/dev/sdc, device=/dev/sdd, device=/dev/sde,
noatime, compress=lzo, ssd, discard, space_cache, autodefrag, inode_cache 0 0

¿Qué tan grande es su grupo de almacenamiento?

Btrfs es una fantástica opción para la agrupación y duplicación de almacenamiento que seguramente se volverá más popular una vez que se considere completamente estable. Tampoco estaría mal que haya una GUI para facilitar la configuración (además de en algunos instaladores de distribución), pero los comandos que debe usar en la terminal son fáciles de comprender y aplicar.

¿Cuál es el grupo de almacenamiento más grande que podría hacer? ¿Crees que las piscinas de almacenamiento valen la pena? Háganos saber en los comentarios!

Crédito de la imagen: William Hook

In this article