Cómo crear y administrar el sistema de archivos Btrfs en Linux


El sistema de archivos Btrfs o B-tree es un copy-on-write (COW) con licencia GPL que fue desarrollado por varias empresas como sigue Oracle, Redhat, Fujitsu, Intel, Facebook , Linux Foundation, Suse, etc. Brtfs admitirá un máximo de 16 exbibyte y puede tener un máximo de 8 exbibyte, debido a la limitación del kernel.

Los archivos se pueden crear con cualquier carácter excepto "/" y NULL . Btrfs tiene funciones de autorreparación y tiene la capacidad de abarcar varios volúmenes. En Btrfs podemos reducir, hacer crecer el sistema de archivos, agregar o eliminar dispositivos de bloqueo en modo en línea.

También proporciona subvolúmenes, los subvolúmenes no son dispositivos de bloque separados, podemos crear instantáneas y restaurar la instantánea para esos subvolúmenes. En lugar de usar LVM, podemos usar btrfs. El sistema de archivos Btrfs aún se está probando y aún no se ha incluido en producción. Si tenemos algún dato importante, actualmente se recomienda no utilizar btrfs en entornos de producción.

Btrfs lanzó su versión 3.18 el mes pasado en diciembre de 2014 con varias características nuevas.

Esta nueva versión de btrfs se llenó de muchas características nuevas de la siguiente manera:

  1. De forma predeterminada, la función de metadatos ajustados de mkfs está disponible en el kernel 3.10.
  2. Para reparar los sistemas de archivos gravemente dañados con cuidado.
  3. Se agregó la opción de conversión para mostrar el progreso.
  4. Capacidad para vincular archivos perdidos a perdidos + encontrados. Esta es una solución para un error reciente del kernel.
  5. Para ver la descripción general del uso del sistema de archivos en lugar de df.
  6. Y muchas más correcciones de errores con documentación mejorada.
  7. Subvolúmenes para el sistema de archivos.

Hostname	:	btrfs.tecmintlocal.com
IP addrress 	:	192.168.0.120
Disk Size Used	:	8GB [/dev/sdb]

Paso 1: Instalar y crear un sistema de archivos Btrfs

1. En la mayoría de las últimas distribuciones de Linux actuales, el paquete btrfs viene preinstalado. Si no es así, instale el paquete btrfs usando el siguiente comando.

# yum install btrfs-progs -y		[On RedHat based Distro's]
# sudo apt-get install btrfs-tools -y	[On Debian based Distro's]

2. Después de instalar el paquete btrfs en el sistema, ahora necesitamos habilitar el módulo Kernel para btrfs usando el siguiente comando.

# modprobe btrfs

3. Aquí, hemos usado solo un disco (es decir, /dev/sdb ) en este disco, vamos a configurar volúmenes lógicos y crear el sistema de archivos btrfs. Antes de crearlos, primero verifiquemos el disco conectado al sistema.

# ls -l /dev | grep sd

4. Una vez que haya confirmado que el disco está conectado correctamente al sistema, ahora es el momento de crear una partición para LVM. Usaremos el comando "fdisk" para crear particiones en el disco /dev/sdb . Siga las instrucciones que se explican a continuación para crear una nueva partición en la unidad.

# fdisk -c /dev/sdb

  1. Presione "n" para crear una nueva partición.
  2. Luego, elija "P" para la partición primaria.
  3. A continuación, elija el número de partición como 1.
  4. Defina el valor predeterminado con solo presionar dos veces la tecla Intro.
  5. Luego presione "P" para imprimir la partición definida.
  6. Presione "L" para enumerar todos los tipos disponibles.
  7. Escriba "t" para elegir las particiones.
  8. Elija "8e" para Linux LVM y presione Entrar para aplicar.
  9. Luego, use nuevamente "p" para imprimir los cambios que hemos realizado.
  10. Utilice "w" para escribir los cambios.

5. Una vez que haya creado la partición con éxito, debe actualizar los cambios de la tabla de particiones en el kernel para que podamos ejecutar el comando partprobe para agregar la información del disco al kernel y luego enumerar la partición como se muestra a continuación.

# partprobe -s
# ls -l /dev | grep sd

6. Cree un volumen físico y un grupo de volúmenes en el disco/dev/sdb1 mediante el comando pvcreate y vgcreate.

# pvcreate /dev/sdb1
# vgcreate tecmint_vg /dev/sdb1

7. Cree un volumen lógico en el grupo de volúmenes. Aquí he creado dos volúmenes lógicos.

# lvcreate -L +2G -n tecmint_lv1 tecmint_vg
# lvcreate -L +2G -n tecmint_lv2 tecmint_vg

8. Enumere el volumen físico, el grupo de volúmenes y los volúmenes lógicos creados.

# pvs && vgs && lvs

9. Creemos ahora el sistema de archivos para nuestros volúmenes lógicos.

# mkfs.btrfs /dev/tecmint_vg/tecmint_lv1

10. A continuación, cree un punto de montaje y monte el sistema de archivos.

# mkdir /mnt/tecmint_btrfs1
# mount /dev/tecmint_vg/tecmint_lv1 /mnt/tecmint_btrfs1/

11. Verifique el punto de montaje con la ayuda del comando df.

# df -h

Aquí el tamaño disponible era de 2 GB