Observação:

Conceitos Básicos do Sistema de Arquivos Btrfs no Oracle Linux

Introdução

O sistema de arquivos Btrfs fornece a capacidade de manipular pools, instantâneos, checksums e vários dispositivos abrangendo sistemas de arquivos do Linux existentes. Para obter uma visão geral do sistema de arquivos Btrfs e de seus recursos, consulte Oracle Linux 8: Gerenciando Sistemas de Arquivos Locais.

Este tutorial descreve como configurar seu sistema do Oracle Linux para usar o sistema de arquivos Btrfs. Este tutorial destina-se aos usuários do Oracle Linux 8 ou posterior.

Objetivos

Após a conclusão deste tutorial, você será capaz de:

Pré-requisitos

Qualquer sistema do Oracle Linux 8 com as seguintes configurações:

Verifique a Instalação dos pacotes do Btrfs

Observação: Ao usar o ambiente de laboratório gratuito, consulte Informações Básicas sobre o Oracle Linux Lab para obter instruções de conexão e outras instruções de uso.

  1. Verifique se o sistema contém o pacote btrfs-progs.

    dnf list installed | grep btrfs-progs
    
  2. Se o pacote não estiver no sistema, instale-o e seus pacotes dependentes.

    sudo dnf install -y btrfs-progs
    

Criar o sistema de arquivos Btrfs

  1. Verifique os dispositivos que você usaria para o sistema de arquivos.

    lsblk
    

    Sua instância de laboratório inclui os seguintes volumes em blocos adicionais:

    • /dev/sdb
    • /dev/sdc
    • /dev/sdd
    • /dev/sde
  2. Execute o comando a seguir para criar o sistema de arquivos Btrfs.

    sudo mkfs.btrfs /dev/sdb /dev/sdc
    

    Na saída, a seção Devices lista os dois dispositivos usados para criar o sistema de arquivos. Por padrão, o comando configura o sistema de arquivos com Raid 0 para dividir os dados e Raid 1 para espelhar os metadados.

  3. Crie um diretório no qual montar o sistema de arquivos.

    sudo mkdir /data
    
  4. Monte o sistema de arquivos.

    sudo mount /dev/sdb /data
    
  5. Verifique a configuração do sistema de arquivos.

    sudo btrfs filesystem usage /data
    

    Como alternativa, você também pode digitar:

    sudo btrfs filesystem df /data
    
  6. Faça com que o sistema de arquivos seja montado automaticamente na reinicialização.

    1. Obtenha o UUID do Btrfs.

      sudo btrfs filesystem show
      

      Observe que /dev/sdb e /dev/sdc têm UIDs idênticos. Você pode verificar ainda mais seus UIDs idênticos com um dos seguintes comandos:

      • lsblk -o NAME,UUID,MOUNTPOINT
      • sudo blkid -s UUID -o value <device-name> em que pode ser `/dev/sdb` ou `/dev/sdc`.
    2. Inclua a seguinte linha no arquivo /etc/fstab:

      <UUID> /data btrfs defaults 0 0

      Observação: Você pode adicionar a linha usando o comando tee da seguinte forma:

      echo "UUID=$(sudo blkid -s UUID -o value /dev/sdc) /data btrfs defaults 0 0" | sudo tee -a /etc/fstab
      

Testar o novo sistema de arquivos

  1. Crie um arquivo em /data.

    sudo fallocate -l 5G /data/test1.img
    
  2. Verifique o uso do sistema de arquivos como resultado do novo arquivo.

    sudo btrfs filesystem usage /data
    

    Parte da saída indica que o arquivo em /data agora está distribuído entre os dois dispositivos:

    Data,single: Size:5.01GiB, Used:5.00GiB (99.87%)

    /dev/sdb 2.01Gib /dev/sdc 3.00Gib

Estender o sistema de arquivos Btrfs

  1. Adicione o dispositivo /dev/sdd ao sistema de arquivos.

    sudo btrfs device add /dev/sdd /data
    
  2. Exiba a nova configuração do sistema de arquivos.

    sudo btrfs filesystem usage /data
    

    A seção Unallocated da saída inclui o novo dispositivo que você acabou de adicionar.

    Unallocated:

    /dev/sdb 46.98GiB /dev/sdc 45.99GiB /dev/sdd 50.00GiB

  3. Reconfigure /data para usar a nova configuração do sistema de arquivos.

    Enquanto o sistema de arquivos em si tiver sido expandido, /data ainda será distribuído com base na configuração anterior. Esta etapa ajusta o diretório para a nova configuração.

    sudo btrfs balance start --bg /data
    

    A opção --bg faz com que o processo seja executado em segundo plano.

  4. Para monitorar o andamento da operação, execute um dos seguintes comandos:

    Observação: A operação de saldo pode demorar cerca de 7 minutos para ser concluída. Não vá para a próxima etapa até que o monitoramento indique que o processo foi concluído.

    1. Para verificar o andamento em um momento no processo, digite:

      sudo btrfs balance status /data
      

      A saída especifica a porcentagem de conclusão. Se a operação tiver sido concluída, a saída do comando será No balance found on /data.

    2. Para executar o monitoramento contínuo, digite:

      sudo watch -t -n5 btrfs balance status /data
      

      A tela exibe periodicamente a porcentagem de conclusão do processo, por exemplo, 2 out of about 8 chunks balanced (3 considered), 75% left.

      No final do processo, a saída relata No balance found on /data.

      Pressione Ctrl+C para sair do monitoramento em tempo real.

  5. Verifique os resultados do processo de saldo.

    sudo btrfs filesystem usage /data
    

    Parte da saída indica que /data agora está distribuído entre os três dispositivos:

    Data,single: Size:11.00GiB, Used:10.00GiB (90.91%)

    /dev/sdb 2.00Gib /dev/sdc 1.00Gib /dev/sdd 3.00Gib

Recuperar o sistema de arquivos após uma perda de dispositivo

Para concluir o exercício nesta seção, é criado um cenário em que um dispositivo é perdido por causa de uma falha de hardware.

Simular uma falha

  1. Desanexe o dispositivo /dev/sdd com o seguinte comando:

    echo 1 | sudo tee /sys/block/sdd/device/delete
    
  2. Verifique o status do sistema de arquivos.

    sudo btrfs filesystem show
    

    A saída informa alguns dispositivos ausentes.

  3. Determine qual dispositivo está faltando.

    sudo btrfs filesystem usage /data
    

    Ao comparar a saída do comando com a do comando filesystem show anterior, você pode identificar /dev/sdd como o dispositivo ausente.

Executar uma operação de recuperação

  1. Remonte o sistema de arquivos em modo degradado.

    sudo mount -o remount,rw,degraded /data
    
  2. Substitua o dispositivo ausente.

    sudo btrfs replace start -r 3 /dev/sde /data
    

    Especifique -r 3 com base na configuração original que usou 3 dispositivos.

  3. Verifique o status do processo de substituição.

    sudo btrfs replace status /data
    

    O comando exibe periodicamente o percentual de conclusão do processo, por exemplo, 2.0 done, 0 write errs, 0 uncorr. read errs.

    O processo leva cerca de 5 minutos para ser concluído. Na conclusão, uma notificação semelhante à seguinte é exibida:

    Started on 30.Sep 16:32:17, finished on 30.Sep 16:40:06, 0 write errs, 0 uncorr. read errs

  4. Verifique o status do sistema de arquivos.

    sudo btrfs filesystem show
    

    A lista de dispositivos agora inclui /dev/sde.

  5. Reconfigure /data para usar a nova configuração do sistema de arquivos.

    sudo btrfs balance start --bg /data
    
  6. Para monitorar o andamento da operação de balanceamento, execute um dos seguintes comandos:

    Observação: A operação de saldo pode demorar cerca de 7 minutos para ser concluída. Não vá para a próxima etapa até que o monitoramento indique que o processo foi concluído.

    1. Para verificar o andamento em um momento no processo, digite:

      sudo btrfs balance status /data
      

      A saída especifica a porcentagem de conclusão. Se a operação tiver sido concluída, a saída do comando será No balance found on /data.

    2. Para executar o monitoramento contínuo, digite:

      sudo watch -t -n5 btrfs balance status /data
      

      A tela exibe periodicamente a porcentagem de conclusão do processo, por exemplo, 2 out of about 8 chunks balanced (3 considered), 75% left.

      No final do processo, a saída relata No balance found on /data.

      Pressione Ctrl+C para sair do monitoramento em tempo real.

  7. Verifique os resultados do processo de saldo.

    sudo btrfs filesystem usage /data
    

    A saída mostra que /data agora está distribuída entre /dev/sdb, /dev/sdc e /dev/sde.

Demonstração em Vídeo

O tutorial em vídeo Conceitos Básicos do Sistema de Arquivos Btrfs no Oracle Linux 8 demonstra esses exercícios de laboratório para configurar o Btrfs no seu sistema Oracle Linux.

Para obter mais informações

Consulte outros tutoriais para obter mais instruções sobre como usar o Btrfs. Consulte também a documentação do Btrfs em https://docs.oracle.com/en/operating-systems/oracle-linux/8/fsadmin/.

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.