Como criar e gerenciar o sistema de arquivos Btrfs no Linux
O sistema de arquivos Btrfs ou B-tree é um copy-on-write (COW) licenciado pela GPL e foi desenvolvido por várias empresas como segue: Oracle, Redhat, Fujitsu, Intel, Facebook , Linux Foundation, Suse, etc. Brtfs suportará no máximo 16 exbibytes e o tamanho do arquivo pode ser de no máximo 8 exbibytes, devido à limitação do kernel.
Os arquivos podem ser criados com qualquer caractere, exceto “/” e NULL. O Btrfs possui recursos de autocorreção e capacidade de abranger vários volumes. No Btrfs podemos reduzir, aumentar o sistema de arquivos, adicionar ou remover dispositivos de bloco no modo online.
Ele também fornece subvolumes. Os subvolumes não são dispositivos de bloco separados, podemos criar instantâneos e restaurar o instantâneo para esses subvolumes. Em vez de usar LVM podemos usar btrfs. O sistema de arquivos Btrfs ainda está em teste, ainda não incluído na produção. Se tivermos algum dado importante, atualmente é aconselhável não usar o btrfs em ambientes de produção.
O Btrfs lançou sua versão 3.18 no mês passado dezembro de 2014 com vários novos recursos.
Recursos do Btrfs
Esta nova versão do btrfs contém muitos recursos novos, como segue:
- Por padrão, o recurso skinny-metadata do mkfs está disponível no kernel 3.10.
- Para reparar os sistemas de arquivos gravemente corrompidos com cuidado.
- Adicionada opção de conversão para mostrar o progresso.
- Capacidade de vincular arquivos perdidos a perdidos + encontrados. Esta é uma correção para um bug recente do kernel.
- Para ver a visão geral do uso do sistema de arquivos em vez de df.
- E muitas outras correções de bugs e documentação aprimorada.
- Subvolumes para sistema de arquivos.
Configuração do meu ambiente
Hostname : btrfs.tecmintlocal.com
IP addrress : 192.168.0.120
Disk Size Used : 8GB [/dev/sdb]
Etapa 1: instalação e criação do sistema de arquivos Btrfs
1. Na maioria das distribuições Linux mais recentes, o pacote btrfs vem pré-instalado. Caso contrário, instale o pacote btrfs usando o seguinte comando.
yum install btrfs-progs -y [On RedHat based Distro's]
sudo apt-get install btrfs-tools -y [On Debian based Distro's]
2. Após a instalação do pacote btrfs no sistema, agora precisamos habilitar o módulo Kernel para btrfs usando o comando abaixo.
modprobe btrfs
3. Aqui, usamos apenas um disco (ou seja, /dev/sdb) neste disco, vamos configurar volumes lógicos e criar o arquivo btrfs- sistema. Antes de criá-los, vamos primeiro verificar o disco conectado ao sistema.
ls -l /dev | grep sd
4. Depois de confirmar que o disco está conectado corretamente ao sistema, agora é hora de criar uma partição para o LVM. Usaremos o comando ‘fdisk’ para criar partições no disco /dev/sdb. Siga as instruções explicadas abaixo para criar uma nova partição na unidade.
fdisk -c /dev/sdb
- Pressione ‘n’ para criar uma nova partição.
- Em seguida, escolha ‘P’ para partição primária.
- Em seguida, escolha o número da partição como 1.
- Defina o valor padrão pressionando apenas duas vezes a tecla Enter.
- Em seguida, pressione ‘P‘ para imprimir a partição definida.
- Pressione ‘L‘ para listar todos os tipos disponíveis.
- Digite ‘t’ para escolher as partições.
- Escolha ‘8e’ para Linux LVM e pressione Enter para aplicar.
- Em seguida, use novamente ‘p’ para imprimir as alterações que fizemos.
- Use ‘w’ para escrever as alterações.
5. Depois de criar a partição com sucesso, você precisa atualizar as alterações da tabela de partição no kernel. Para isso, vamos executar o comando partprobe para adicionar as informações do disco ao kernel e depois disso, liste a partição conforme mostrado abaixo.
partprobe -s
ls -l /dev | grep sd
Configurar volume lógico
6. Crie um volume físico e um grupo de volumes no disco /dev/sdb1 usando os comandos pvcreate e vgcreate.
pvcreate /dev/sdb1
vgcreate tecmint_vg /dev/sdb1
7. Crie um volume lógico no grupo de volumes. Aqui eu criei dois volumes lógicos.
lvcreate -L +2G -n tecmint_lv1 tecmint_vg
lvcreate -L +2G -n tecmint_lv2 tecmint_vg
8. Liste o volume físico criado, o grupo de volumes e os volumes lógicos.
pvs && vgs && lvs
Criando sistema de arquivos Btrfs
9. Vamos criar agora o sistema de arquivos para nossos volumes lógicos.
mkfs.btrfs /dev/tecmint_vg/tecmint_lv1
10. Em seguida, crie um ponto de montagem e monte o sistema de arquivos.
mkdir /mnt/tecmint_btrfs1
mount /dev/tecmint_vg/tecmint_lv1 /mnt/tecmint_btrfs1/
11. Verifique o ponto de montagem com a ajuda do comando df.
df -h
Aqui o tamanho disponível era 2 GB