Como salvar o espaço em disco usando a desduplicação do BTRFS

Como salvar o espaço em disco usando a desduplicação do BTRFS
A desduplicação é um recurso de software usado para remover blocos de dados duplicados (blocos de dados redundantes) de um sistema de arquivos para salvar espaços de disco. O sistema de arquivos BTRFS é um sistema de arquivos de cópia em escritos (vaca) moderno que suporta desduplicação.

Se você precisar manter muitos dados redundantes (eu.e., backups de arquivos, banco de dados) em seu computador, o recurso Copy-on-Write (Cow) e de desduplicação do sistema de arquivos BTRFS pode salvar uma enorme quantidade de espaços de disco.

Neste artigo, mostrarei como salvar espaços de disco usando o recurso de deduplicação BTRFS. Então vamos começar.

Pré -requisitos:

Para experimentar os exemplos deste artigo,

  • Você deve ter o sistema de arquivos BTRFS instalado no seu computador.
  • Você precisa ter um disco rígido ou SSD com pelo menos 1 partição grátis (de qualquer tamanho).

Eu tenho um disco rígido de 20 GB sdb Na minha máquina Ubuntu. Eu criei 2 partições sdb1 e sdb2, Neste disco rígido. Vou usar a partição sdb1 neste artigo.

$ sudo lsblk -e7

Seu disco rígido ou SSD pode ter um nome diferente do meu, assim como as partições. Então, certifique -se de substituí -los por seus a partir de agora.

Se você precisar de ajuda para instalar o sistema de arquivos BTRFS no Ubuntu, verifique meu artigo Instale e use BTRFs no Ubuntu 20.04 LTS.

Se você precisar de ajuda para instalar o sistema de arquivos BTRFS no Fedora, verifique meu artigo Instale e use BTRFs no Fedora 33.

Criando um sistema de arquivos BTRFS:

Para experimentar a compactação de dados no nível do sistema de arquivos BTRFS, você precisa criar um sistema de arquivos BTRFS.

Para criar um sistema de arquivos BTRFS com o rótulo dados no sdb1 Partição, execute o seguinte comando:

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

Monte um sistema de arquivos BTRFS:

Crie um diretório /dados com o seguinte comando:

$ sudo mkdir -v /dados

Para montar o sistema de arquivos BTRFS criado no sdb1 partição no /dados Diretório, execute o seguinte comando:

$ sudo montagem /dev /sdb1 /dados

O sistema de arquivos BTRFS deve ser montado, como você pode ver na captura de tela abaixo.

$ df -h /dados

Instalando ferramentas de desduplicação no Ubuntu 20.04 LTS:

Para desduplicar um sistema de arquivos BTRFS, você precisa instalar o duperove Programa no seu computador.

Se você está usando o Ubuntu 20.04 LTS, então você pode instalar duperove Do repositório oficial do pacote do Ubuntu.

Primeiro, atualize o cache do repositório de pacotes apt com o seguinte comando:

$ sudo apt update

Instale o duperove Pacote com o seguinte comando:

$ sudo apt install duperove -y

O duperove o pacote deve ser instalado.

Instalando ferramentas de desduplicação no Fedora 33:

Para desduplicar um sistema de arquivos BTRFS, você precisa instalar o duperove Programa no seu computador.

Se você estiver usando o Fedora 33, pode instalar duperove Do repositório oficial do Fedora.

Primeiro, atualize o cache do repositório de pacotes DNF com o seguinte comando:

$ sudo dnf makecache

Instale o duperove Pacote com o seguinte comando:

$ sudo dnf install duperove

Para confirmar a instalação, pressione Y e depois pressione .

O duperove o pacote deve ser instalado.

Testando a desduplicação em um sistema de arquivos BTRFS:

Nesta seção, vou fazer um teste simples para mostrar como o recurso de desduplicação do sistema de arquivos BTRFS remove dados redundantes do sistema de arquivos e salva o espaço do disco.

Como você pode ver,

  1. Eu copiei um arquivo QGIS-OSGEO4W-3.14.0-1-SETUP-X86_64.exe para o /dados diretório. O arquivo é 407 MB no tamanho.
  2. O arquivo armazenado no /dados O diretório tem 407 MB de tamanho.
  3. Somente o arquivo consumido sobre 412 MB do espaço em disco do sistema de arquivos BTRFS montado no /dados diretório.

Como você pode ver,

  1. Eu copiei o mesmo arquivo para o /dados diretório e renomeado para QGIS-OSGEO4W-3.14.0-1-SETUP-X86_64.2.exe.
  2. O arquivo armazenado no /dados diretório é agora 814 MB no tamanho.
  3. Os arquivos consumidos sobre 820 MB do espaço em disco do sistema de arquivos BTRFS montado no /dados diretório.

Para executar a operação de desduplicação no sistema de arquivos BTRFS montado no /dados Diretório, execute o seguinte comando:

$ sudo dupeperove -d /dados

Os blocos de dados redundantes do sistema de arquivos BTRFS montados no /dados diretório deve ser removido.

Como você pode ver,

  1. Eu tenho os arquivos QGIS-OSGEO4W-3.14.0-1-SETUP-X86_64.exe e QGIS-OSGEO4W-3.14.0-1-SETUP-X86_64.2.exe em /dados diretório.
  2. O arquivo armazenado no /dados diretório é agora 814 MB no tamanho.
  3. Os arquivos consumidos sobre 412 MB do espaço em disco do sistema de arquivos BTRFS montado no /dados diretório.

O duperove Programa removido redundante (duplicado) blocos de dados do sistema de arquivos BTRFS montado no /dados diretório e economizou muitos espaços de disco.

Montando automaticamente um sistema de arquivos BTRFS na inicialização:

Para montar o sistema de arquivos BTRFS que você criou, você precisa conhecer o UUID do sistema de arquivos BTRFS.

Você pode encontrar o UUID do sistema de arquivos BTRFS montado no /dados Diretório com o seguinte comando:

$ sudo btrfs arquivos sistemas /dados

Como você pode ver, o uuid do sistema de arquivos BTRFS que eu quero montar na hora da inicialização é E39AC376-90DD-4C39-84D2-E77ABB5E3059. Vai ser diferente para você. Então, certifique -se de substituí -lo por seu a partir de agora.

Abra o /etc/fstab arquivo com o Nano Editor de texto da seguinte forma:

$ sudo nano /etc /fstab

Digite a seguinte linha no final do /etc/fstab arquivo:

UUID = e39AC376-90DD-4C39-84D2-E77ABB5E3059 /DATA BTRFS PADRES

OBSERVAÇÃO: Substitua o Uuid do sistema de arquivos BTRFS com o seu. Além disso, mude a opção de montagem e o algoritmo de compressão como você gosta.

Depois de terminar, pressione + X seguido pela Y e Para salvar o /etc/fstab arquivo.

Para que as alterações entrem em vigor, reinicie seu computador com o seguinte comando:

$ sudo reiniciar

Depois que o seu computador botas, o sistema de arquivos BTRFS deve ser montado no /diretório de dados, Como você pode ver na captura de tela abaixo.

$ df -h /dados

Execute automaticamente a desduplicação usando o trabalho Cron:

Para remover dados redundantes do sistema de arquivos BTRFS, você deve executar o duperove comandar de vez em quando.

Você pode executar automaticamente o duperove Comando em hora, diariamente, semanalmente, mensalmente, anualmente ou na hora da inicialização usando um trabalho de Cron.

Primeiro, encontre o caminho completo do duperove comando com o seguinte comando:

$ que duperove

Como você pode ver, o caminho completo do duperove comando é /usr/bin/duperove. Lembre -se do caminho como você precisará mais tarde.

Para editar o arquivo Crontab, execute o seguinte comando:

$ sudo crontab -e

Selecione um editor de texto que você gosta e pressione .

Vou usar o Nano editor de texto. Então, eu vou digitar 1 e pressione .

O arquivo crontab deve ser aberto.

Para executar o duperove comando no /dados Diretório a cada hora, adicione a seguinte linha no final do arquivo Crontab.

@hourly/usr/bin/duperove -dr/dados >>/var/log/duperove.registro

Para executar o duperove comando no /dados Diretório todos os dias, adicione a seguinte linha no final do arquivo Crontab.

@Daily/usr/bin/duperove -dr/data >>/var/log/duperoveve.registro

Para executar o duperove comando no /dados Diretório toda semana, adicione a seguinte linha no final do arquivo Crontab.

@Weekly/usr/bin/duperove -dr/data >>/var/log/duperove.registro

Para executar o duperove comando no /dados Diretório todos os meses, adicione a seguinte linha no final do arquivo Crontab.

@MONTHLY/USR/BIN/DUPEREMOVE -DR/DATA >>/VAR/LOG/DUPEREMOVE.registro

Para executar o duperove comando no /dados Diretório todos os anos, adicione a seguinte linha no final do arquivo Crontab.

@Yearly/usr/bin/duperove -dr/dados >>/var/log/duperove.registro

Para executar o duperove comando no /dados Diretório no momento da inicialização, adicione a seguinte linha no final do arquivo Crontab.

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

OBSERVAÇÃO: Eu vou executar o duperove comando no horário de inicialização neste artigo.

Depois de terminar, pressione + X seguido pela Y e Para salvar o arquivo Crontab.

Um novo trabalho de Cron deve ser instalado.

Para que as alterações entrem em vigor, reinicie seu computador com o seguinte comando:

$ sudo reiniciar

Enquanto o duperove O comando é executado em segundo plano, a saída do comando será armazenada no /var/log/duperove.registro arquivo.

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

Como você pode ver, o /var/log/duperove.registro o arquivo contém o duperove Dados de log. Isso significa que o trabalho de Cron está funcionando muito bem.

Conclusão:

Neste artigo, mostrei como instalar o duperove Ferramenta de deduplicação BRTFS no Ubuntu 20.04 LTS e Fedora 33. Eu também mostrei como executar a desduplicação do BTRFS usando a ferramenta DUPEREMOVE e executar a ferramenta DUPEREMOV.