Btrfs es un sistema de archivos de propósito general y código abierto para Linux. El nombre deriva del uso de árboles B para almacenar estructuras internas del sistema de archivos. Se utilizan diferentes nombres para el sistema de archivos, incluidos "Butter F S" y "B-tree F S". El desarrollo de Btrfs comenzó en Oracle en 2007 y ahora varias empresas (incluidas Red Hat, Fujitsu, Intel, SUSE y muchas otras) están contribuyendo al esfuerzo de desarrollo. Btrfs está incluido en el kernel principal de Linux.
Utilidades del dispositivo btrfs
Utilice el comando de dispositivo btrfs para administrar dispositivos en sistemas de archivos Btrfs. Una lista de los comandos disponibles es la siguiente:
# btrfs device usage: btrfs device [command] [args] btrfs device add [options] [device] [device...] [path] Add a device to a filesystem btrfs device delete [device]|[devid] [device|devid...] [path] btrfs device remove [device]|[devid] [device|devid...] [path] Remove a device from a filesystem btrfs device scan [(-d|--all-devices)|[device] [device...]] Scan devices for a btrfs filesystem btrfs device ready [device] Check device to see if it has all of its devices in cache for mounting btrfs device stats [options] [path]|[device] Show device IO error statistics btrfs device usage [options] [path] [path..] Show detailed information about internal allocations in devices. manage and query devices in the filesystem
El comando de exploración de dispositivos btrfs explora dispositivos físicos en busca de miembros de un volumen Btrfs. Este comando permite montar un sistema de archivos Btrfs de varios discos sin especificar todos los discos en el comando de montaje.
No necesita ejecutar el "análisis del dispositivo btrfs" desde la línea de comandos, porque udev ejecuta automáticamente el análisis del dispositivo btrfs al arrancar. Utilice el comando btrfs device add para agregar un dispositivo a un sistema de archivos. En este ejemplo, la estructura del sistema de archivos actual es la siguiente:
# btrfs filesystem show Label: none uuid: ba60ac96-1628-4656-b68b-c7327ff49179 Total devices 1 FS bytes used 325.29MiB devid 1 size 10.00GiB used 867.66MiB path /dev/sda
El comando btrfs filesystem df muestra:
# btrfs filesystem df /btrfs Data, single: total=547.66MiB, used=324.75MiB System, single: total=32.00MiB, used=16.00KiB Metadata, single: total=288.00MiB, used=528.00KiB GlobalReserve, single: total=16.00MiB, used=0.00B
La salida del comando df muestra:
# df -h /btrfs Filesystem Size Used Avail Use% Mounted on /dev/sda 10G 342M 9.4G 4% /btrfs
Agregue un disco de 10 GB, /dev/sdb, al sistema de archivos montado en /btrfs mediante el comando btrfs device add:
# btrfs device add /dev/sdb /btrfs
El resultado del comando show del sistema de archivos btrfs muestra el dispositivo recién agregado:
# btrfs filesystem show Label: none uuid: ba60ac96-1628-4656-b68b-c7327ff49179 Total devices 2 FS bytes used 325.29MiB devid 1 size 10.00GiB used 867.66MiB path /dev/sda devid 2 size 10.00GiB used 0.00B path /dev/sdb
La salida del comando btrfs filesystem df no muestra ninguna diferencia después de agregar el nuevo dispositivo:
# btrfs filesystem df /btrfs Data, single: total=547.66MiB, used=324.75MiB System, single: total=32.00MiB, used=16.00KiB Metadata, single: total=288.00MiB, used=528.00KiB GlobalReserve, single: total=16.00MiB, used=0.00B
No hay diferencia en la salida porque el dispositivo recién agregado aún no se ha asignado ni para datos ni para metadatos. El tamaño adicional se refleja en la salida de df:
# df -h /btrfs Filesystem Size Used Avail Use% Mounted on /dev/sda 20G 342M 20G 2% /btrfs
Después de agregar un dispositivo, se recomienda que ejecute el siguiente comando de equilibrio en el sistema de archivos:
# btrfs filesystem balance /btrfs WARNING: Full balance without filters requested. This operation is very intense and takes potentially very long. It is recommended to use the balance filters to narrow down the balanced data. Use 'btrfs balance start --full-balance' option to skip this warning. The operation will start in 10 seconds. Use Ctrl-C to stop it. 10 9 8 7 6 5 4 3 2 1 Starting balance without any filters. Done, had to relocate 17 out of 17 chunks
La ejecución de este comando redistribuye el espacio al equilibrar los fragmentos del sistema de archivos en todos los dispositivos. Este comando también recupera cualquier espacio desperdiciado. Utilice el comando btrfs device delete para eliminar un dispositivo de un sistema de archivos. Ejemplo:
# btrfs device delete /dev/sdb /btrfsCómo usar el comando "btrfs scrub" para administrar la limpieza en los sistemas de archivos Btrfs
Ejemplos del comando "btrfs" para crear y administrar el sistema de archivos Btrfs
Cómo crear y montar el sistema de archivos Btrfs (explicado con ejemplos)