Cómo guardar espacio en disco utilizando la deduplicación BTRFS

Cómo guardar espacio en disco utilizando la deduplicación BTRFS
La deduplicación es una función de software que se utiliza para eliminar los bloques de datos duplicados (bloques de datos redundantes) de un sistema de archivos para guardar espacios en disco. El sistema de archivos BTRFS es un sistema de archivos moderno de copia en escritura (vaca) que admite la deduplicación.

Si necesita mantener muchos datos redundantes (yo.mi., Copias de seguridad de archivos, base de datos) en su computadora, luego la función Copy-on-write (vaca) y de deduplicación del sistema de archivos BTRFS puede guardar una gran cantidad de espacios en disco.

En este artículo, le mostraré cómo guardar espacios de disco utilizando la función de deduplicación BTRFS. Entonces empecemos.

Prerrequisitos:

Para probar los ejemplos de este artículo,

  • Debe tener instalado el sistema de archivos BTRFS en su computadora.
  • Necesita tener un disco duro o un SSD con al menos 1 partición gratuita (de cualquier tamaño).

Tengo un disco duro de 20 GB SDB en mi máquina ubuntu. He creado 2 particiones sdb1 y sdb2, En este disco duro. Usaré la partición sdb1 en este articulo.

$ sudo lsblk -e7

Su disco duro o SSD puede tener un nombre diferente al mío, también lo harán las particiones. Entonces, asegúrese de reemplazarlos con el tuyo de ahora en adelante.

Si necesita ayuda para instalar el sistema de archivos BTRFS en Ubuntu, consulte mi artículo Instalar y usar BTRFS en Ubuntu 20.04 LTS.

Si necesita ayuda para instalar el sistema de archivos BTRFS en Fedora, consulte mi artículo Instalar y usar BTRFS en Fedora 33.

Creación de un sistema de archivos BTRFS:

Para experimentar con la compresión de datos a nivel de sistema de archivos BTRFS, debe crear un sistema de archivos BTRFS.

Para crear un sistema de archivos BTRFS con la etiqueta datos sobre el sdb1 Partición, ejecute el siguiente comando:

$ sudo mkfs.BTRFS -L DATA /DEV /SDB1

Monte un sistema de archivos BTRFS:

Crear un directorio /datos Con el siguiente comando:

$ sudo mkdir -v /datos

Para montar el sistema de archivos BTRFS creado en el sdb1 partición en el /datos directorio, ejecute el siguiente comando:

$ sudo monte /dev /sdb1 /data

El sistema de archivos BTRFS debe montarse, como puede ver en la captura de pantalla a continuación.

$ df -h /datos

Instalación de herramientas de deduplicación en Ubuntu 20.04 LTS:

Para deduplicar un sistema de archivos BTRFS, debe instalar el duperemove Programa en su computadora.

Si estás usando Ubuntu 20.04 LTS, entonces puedes instalar duperemove Del repositorio oficial de paquetes de Ubuntu.

Primero, actualice el caché del repositorio del paquete APT con el siguiente comando:

$ sudo apt actualización

Instala el duperemove Paquete con el siguiente comando:

$ sudo apt instalación duperemove -y

El duperemove Se debe instalar el paquete.

Instalación de herramientas de deduplicación en Fedora 33:

Para deduplicar un sistema de archivos BTRFS, debe instalar el duperemove Programa en su computadora.

Si está utilizando Fedora 33, puede instalar duperemove Del repositorio oficial de paquetes de Fedora.

Primero, actualice el caché del repositorio del paquete DNF con el siguiente comando:

$ sudo dnf makecache

Instala el duperemove Paquete con el siguiente comando:

$ sudo dnf instalación duperemove

Para confirmar la instalación, presione Y y luego presiona .

El duperemove Se debe instalar el paquete.

Prueba de deduplicación en un sistema de archivos BTRFS:

En esta sección, voy a hacer una prueba simple para mostrarle cómo la función de deduplicación del sistema de archivos BTRFS elimina los datos redundantes del sistema de archivos y guarda el espacio de disco.

Como se puede ver,

  1. He copiado un archivo QGIS-OSGEO4W-3.14.0-1-setup-x86_64.exe hacia /datos directorio. El archivo es 407 MB en tamaño.
  2. El archivo almacenado en el /datos El directorio tiene un tamaño de 407 MB.
  3. Solo el archivo consumido sobre 412 MB de espacio en disco desde el sistema de archivos BTRFS montado en el /datos directorio.

Como se puede ver,

  1. He copiado el mismo archivo al /datos directorio y lo cambió el nombre a QGIS-OSGEO4W-3.14.0-1-setup-x86_64.2.exe.
  2. El archivo almacenado en el /datos El directorio es ahora 814 MB en tamaño.
  3. Los archivos consumidos sobre 820 MB de espacio en disco desde el sistema de archivos BTRFS montado en el /datos directorio.

Para realizar la operación de deduplicación en el sistema de archivos BTRFS montado en el /datos directorio, ejecute el siguiente comando:

$ sudo duperemove -DR /Data

Los bloqueos de datos redundantes desde el sistema de archivos BTRFS montado en el /datos Se debe eliminar el directorio.

Como se puede ver,

  1. Tengo los archivos QGIS-OSGEO4W-3.14.0-1-setup-x86_64.exe y QGIS-OSGEO4W-3.14.0-1-setup-x86_64.2.exe en /datos directorio.
  2. El archivo almacenado en el /datos El directorio es ahora 814 MB en tamaño.
  3. Los archivos consumidos sobre 412 MB de espacio en disco desde el sistema de archivos BTRFS montado en el /datos directorio.

El duperemove programa eliminado los bloques de datos redundantes (duplicados) del sistema de archivos BTRFS montado en el /datos directorio y guardado muchos espacios de disco.

Montaje automáticamente un sistema de archivos BTRFS en el arranque:

Para montar el sistema de archivos BTRFS que ha creado, debe conocer el UUID del sistema de archivos BTRFS.

Puede encontrar el UUID del sistema de archivos BTRFS montado en el /datos directorio con el siguiente comando:

$ sudo BTRFS FileSystem Show /Data

Como puede ver, el UUID del sistema de archivos BTRFS que quiero montar en el momento del arranque es E39AC376-90DD-4C39-84D2-E77ABB5E3059. Será diferente para ti. Entonces, asegúrese de reemplazarlo con el tuyo de ahora en adelante.

Abre el /etc/fstab archivo con el nano Editor de texto de la siguiente manera:

$ sudo nano /etc /fstab

Escriba la siguiente línea al final del /etc/fstab archivo:

Uuid = E39AC376-90DD-4C39-84D2-E77ABB5E3059 /DATOS BTRFS valores 0 0 0

NOTA: Reemplace el UUID del sistema de archivos BTRFS con el suyo. Además, cambie la opción de montaje y el algoritmo de compresión como desee.

Una vez que haya terminado, presione + X seguido por Y y Para salvar el /etc/fstab archivo.

Para que los cambios entren en vigencia, reinicie su computadora con el siguiente comando:

$ sudo reinicio

Una vez que su computadora arranca, el sistema de archivos BTRFS debe montarse en el /directorio de datos, Como puede ver en la captura de pantalla a continuación.

$ df -h /datos

Realizar automáticamente la deduplicación usando el trabajo cron:

Para eliminar los datos redundantes del sistema de archivos BTRFS, debe ejecutar el duperemove comandar de vez en cuando.

Puede ejecutar automáticamente el duperemove Comando por hora, diariamente, semanal, mensual, anual o en la hora de arranque usando un trabajo cron.

Primero, encuentre el camino completo del duperemove comando con el siguiente comando:

$ que duperemove

Como puede ver, el camino completo del duperemove el comando es /usr/bin/duperemove. Recuerda el camino como lo necesitarás más tarde.

Para editar el archivo CRONTAB, ejecute el siguiente comando:

$ sudo crontab -e

Seleccione un editor de texto que le guste y presione .

Usaré el nano editor de texto. Entonces, escribiré 1 y presionar .

El archivo crontab debe abrirse.

Para ejecutar el duperemove comando en el /datos Directorio cada hora, agregue la siguiente línea al final del archivo CRONTAB.

@hourly/usr/bin/duperemove -dr/data >>/var/log/duperemove.registro

Para ejecutar el duperemove comando en el /datos Directorio todos los días, agregue la siguiente línea al final del archivo CRONTAB.

@daily/usr/bin/duperemove -dr/data >>/var/log/duperemove.registro

Para ejecutar el duperemove comando en el /datos Directorio cada semana, agregue la siguiente línea al final del archivo CRONTAB.

@weekly/usr/bin/duperemove -dr/data >>/var/log/duperemove.registro

Para ejecutar el duperemove comando en el /datos Directorio cada mes, agregue la siguiente línea al final del archivo CRONTAB.

@Monthly/usr/bin/duperemove -dr/data >>/var/log/duperemove.registro

Para ejecutar el duperemove comando en el /datos Directorio cada año, agregue la siguiente línea al final del archivo CRONTAB.

@Yearly/usr/bin/duperemove -dr/data >>/var/log/duperemove.registro

Para ejecutar el duperemove comando en el /datos Directorio en la hora de arranque, agregue la siguiente línea al final del archivo CRONTAB.

@reboot/usr/bin/duperemove -dr/data >>/var/log/duperemove.registro

NOTA: Corriré el duperemove Comando en el momento de la arranque en este artículo.

Una vez que haya terminado, presione + X seguido por Y y Para guardar el archivo CRONTAB.

Se debe instalar un nuevo trabajo cron.

Para que los cambios entren en vigencia, reinicie su computadora con el siguiente comando:

$ sudo reinicio

Como el duperemove El comando se ejecuta en segundo plano, la salida del comando se almacenará en el /var/log/duperemove.registro archivo.

$ sudo ls -lh/var/log/duperemove*

Como puedes ver, el /var/log/duperemove.registro el archivo contiene el duperemove Dato de registro. Significa que el trabajo cron funciona bien.

Conclusión:

En este artículo, le he mostrado cómo instalar el duperemove Herramienta de deduplicación BRTFS en Ubuntu 20.04 LTS y Fedora 33. También le he mostrado cómo realizar la deduplicación BTRF utilizando la herramienta DuperMove y ejecutar la herramienta DuperMove automáticamente usando un trabajo cron.