Btrfs

Cómo utilizar Btrfs Balance?

Cómo utilizar Btrfs Balance?
El sistema de archivos Btrfs tiene soporte integrado para múltiples dispositivos, por lo que puede crear diferentes niveles de RAID usándolo.

Una vez que haya creado un RAID Btrfs, puede agregar más dispositivos de almacenamiento al RAID para expandir el RAID. Pero, una vez que haya agregado más dispositivos de almacenamiento al RAID, Btrfs no distribuirá los datos / metadatos / datos del sistema existentes a los nuevos dispositivos de almacenamiento automáticamente. Por lo tanto, es posible que no obtenga el rendimiento deseado (velocidad de lectura / escritura) del RAID, y es posible que no pueda completar los nuevos dispositivos de almacenamiento con los datos redundantes necesarios. Por lo tanto, la matriz RAID puede no sobrevivir a la cantidad deseada de fallas en la unidad.

Para resolver estos problemas, el sistema de archivos Btrfs proporciona una herramienta de equilibrio incorporada. La utilidad de balance Btrfs distribuirá los datos / metadatos / datos del sistema de los dispositivos de almacenamiento existentes del RAID a los dispositivos de almacenamiento recién agregados.

En este artículo, le mostraré cómo usar la utilidad de balance Btrfs para difundir los datos / metadatos / datos del sistema de los dispositivos de almacenamiento existentes del RAID a los dispositivos de almacenamiento recién agregados. Entonces empecemos!

Abreviaturas

REDADA - Matriz redundante de discos económicos / independientes
MEGABYTE - Megabyte
GB - Gigabyte

Prerrequisitos

Para seguir este artículo, debe tener un RAID Btrfs que funcione o una configuración multidispositivo.

He creado un RAID Btrfs en RAID-0 configuración usando 4 dispositivos de almacenamiento sdb, sdc, sdd, y sde.

Como puede ver, el sistema de archivos Btrfs asignado 1 GB de espacio en disco para datos1 256 MB de espacio en disco para metadata2, y 4 MB de espacio en disco para system-data3 de cada uno de los dispositivos de almacenamiento en el RAID.

Acerca de 18.75 GB fuera de 20 GB aún no está asignado4 de cada uno de los dispositivos de almacenamiento del RAID.

$ sudo btrfs uso / datos del sistema de archivos

Escribir un script para generar archivos aleatorios

Para mostrarle cómo funciona la utilidad de equilibrio Btrfs, necesitamos generar algunos archivos aleatorios para llenar el sistema de archivos Btrfs. Creemos un script de shell que haga precisamente eso.

Crear un nuevo script de shell genfiles.sh en el directorio / usr / local / bin / de la siguiente manera:

$ sudo nano / usr / local / bin / genfiles.sh

Escriba las siguientes líneas de códigos en el genfiles.sh script de shell.

#!/ bin / bash
si bien es cierto
hacer
NOMBRE DE ARCHIVO = $ (uuidgen)
echo "[Creando] $ FILENAME"
dd if = / dev / random of = $ FILENAME bs = 1M count = 256 status = progress
echo "[Creado] $ FILENAME"
hecho

Una vez que haya terminado, presione + X seguido por Y y para salvar el genfiles.sh script de shell.

La genfiles.sh el script de shell ejecuta un infinito tiempo círculo.

si bien es cierto
hacer
# otros códigos
hecho

La siguiente línea genera un UUID usando el uuidgen comando y almacena el UUID en el NOMBRE DEL ARCHIVO variable.

La siguiente línea imprime un mensaje en la consola antes del archivo NOMBRE DEL ARCHIVO es generado.

La siguiente línea genera un nuevo archivo aleatorio NOMBRE DEL ARCHIVO utilizando la dd mando. El archivo tendrá un tamaño de 256 MB.

La siguiente línea imprime un mensaje en la consola después del archivo NOMBRE DEL ARCHIVO es generado.

Agregue permiso de ejecución al genfiles.sh script de shell de la siguiente manera:

$ sudo chmod + x / usr / local / bin / genfiles.sh

La genfiles.sh El script de shell ahora debería ser accesible como cualquier otro comando.

$ que genfiles.sh

Generación de archivos aleatorios en el sistema de archivos Btrfs

Queremos generar archivos aleatorios en el RAID Btrfs. Digamos que el Btrfs RAID está montado en el /datos directorio.

Navega al /datos directorio donde se monta el Btrfs RAID de la siguiente manera:

$ cd / datos

Como puede ver, no hay archivos disponibles en mi RAID Btrfs en este momento.

$ ls -lh

Para generar algunos archivos aleatorios en el directorio de trabajo actual (/datos directorio en este caso), ejecute el genfiles.sh script de shell de la siguiente manera:

$ sudo genfiles.sh

La genfiles.sh El script de shell debería comenzar a generar archivos aleatorios en el /datos directorio.

La genfiles.sh el script está generando archivos aleatorios. Deje que la secuencia de comandos se ejecute durante un par de minutos, para que ocupe aproximadamente 2-3 GB de espacio en disco del RAID Btrfs.

Cuando quieras detener el genfiles.sh script de shell, presione + C.

Como puede ver, algunos archivos aleatorios se generan en el RAID Btrfs.

$ ls -lh


Como puede ver, el RAID Btrfs asignó 2 GB de cada uno de los dispositivos de almacenamiento agregados al RAID. Anteriormente, el RAID Btrfs asignaba 1 GB de cada uno de los dispositivos de almacenamiento agregados al RAID.

El espacio en disco no asignado se ha reducido de 18.75 GB a 17.75 GB en todos los dispositivos de almacenamiento del RAID.

$ sudo btrfs uso / datos del sistema de archivos

Agregar otro dispositivo de almacenamiento al RAID Btrfs

Para mostrarle cómo equilibrar un RAID Btrfs después de agregar un nuevo dispositivo de almacenamiento, debe agregarle un nuevo dispositivo de almacenamiento.

He agregado un nuevo disco duro sdf a mi computadora, que quiero agregar al RAID Btrfs montado en el /datos directorio. Veamos como hacerlo.

$ sudo lsblk -e7

Navegue a un directorio diferente (i.mi., CASA directorio) del /datos directorio de la siguiente manera:

$ cd

Para agregar el dispositivo de almacenamiento sdf al RAID Btrfs montado en el /datos directorio, ejecute el siguiente comando:

$ sudo btrfs dispositivo agregar / dev / sdf / data

Como puede ver, el dispositivo de almacenamiento sdf se agrega al RAID Btrfs. El tamaño de RAID ha aumentado de 80 GB a 100 GB.

$ sudo btrfs uso / datos del sistema de archivos

Equilibrio del RAID Btrfs

Como puede ver, el dispositivo de almacenamiento recién agregado (sdf) del RAID (montado en el /datos directorio) tiene 20 GB sin asignar, y los otros dispositivos de almacenamiento (sdb, sdc, sdd, sde, etc.) tengo 17.75 GB sin asignar.

$ sudo btrfs uso / datos del sistema de archivos

Los datos1, metadatos2, y datos del sistema3 solo están disponibles en los dispositivos de almacenamiento existentes del RAID, no en el dispositivo de almacenamiento recién agregado.

Para distribuir los datos, metadatos y datos del sistema en todos los dispositivos de almacenamiento del RAID (incluido el dispositivo de almacenamiento recién agregado) montado en el /datos directorio, ejecute el siguiente comando:

$ sudo btrfs balance start --full-balance / data

Puede llevar un tiempo distribuir los datos, metadatos y datos del sistema en todos los dispositivos de almacenamiento del RAID si contiene una gran cantidad de datos.

Una vez que los dispositivos de almacenamiento del RAID estén correctamente equilibrados, debería ver el siguiente mensaje.

Como puede ver, una vez que se completa la operación de balance, el dispositivo de almacenamiento recién agregado tiene la misma cantidad de espacio en disco no asignado que los otros dispositivos de almacenamiento del RAID.

Después de la operación de balance, se asigna la misma cantidad de espacio en disco que los otros dispositivos de almacenamiento del RAID para los datos, metadatos y datos del sistema del dispositivo de almacenamiento recién agregado (sdf) del RAID.

Conclusión

En este artículo, he discutido el propósito de la utilidad de balance de Btrfs, así como también cómo balancear un sistema de archivos Btrfs RAID o multidispositivo después de agregar nuevos dispositivos de almacenamiento al sistema de archivos RAID o multidispositivo.

Cómo invertir la dirección de desplazamiento del mouse y los paneles táctiles en Windows 10
Ratón y Panel táctils no solo facilitan la informática, sino que también hacen que sea más eficiente y requieran menos tiempo. No podemos imaginar una...
Cómo cambiar el tamaño, el color y el esquema del puntero del mouse y del cursor en Windows 10
El puntero y el cursor del mouse en Windows 10 son aspectos muy importantes del sistema operativo. Esto también se puede decir de otros sistemas opera...
Motores de juegos gratuitos y de código abierto para desarrollar juegos de Linux
Este artículo cubrirá una lista de motores de juegos de código abierto y gratuitos que se pueden usar para desarrollar juegos 2D y 3D en Linux. Existe...