DEV Community

Cover image for [pt-BR] Como expandi o armazenamento da minha pasta /home com Block Storage
Marcos Vilela
Marcos Vilela

Posted on • Edited on

[pt-BR] Como expandi o armazenamento da minha pasta /home com Block Storage

Olá, pessoal! Esse é meu primeiro post por aqui, e o objetivo é compartilhar um pouco das experiências e do conhecimento que venho adquirindo na área de SRE/DevOps. A relato de hoje é um exemplo de mostrar como encarar desafios técnicos que parecem simples, mas são cheios de nuances. Vou falar sobre como fiz para aumentar o armazenamento da minha pasta /home usando block storage. Para quem está no início dessa jornada, essa é uma experiência prática que traz muito aprendizado.

Por que Adicionar um Volume de Armazenamento em Bloco?

Um dia, percebi que meu diretório /home estava perto de atingir o limite de armazenamento disponível. Precisava de uma solução que pudesse integrar de forma eficiente com o sistema operacional e ser fácil de gerenciar. Optar por um volume de armazenamento em bloco foi uma solução direta para adicionar espaço sem grandes complicações e sem precisar configurar novos servidores.

Armazenamento em bloco é útil para ampliar rapidamente o espaço e, diferentemente de sistemas de arquivos de rede (como NFS), oferece a vantagem de ser “plug-and-play” em servidores específicos. Esse processo me levou a explorar a configuração e o gerenciamento de partições e sistemas de arquivos, além de me ajudar a entender os fundamentos do armazenamento.

Criando o Volume de Armazenamento

O primeiro passo foi criar o volume de armazenamento em bloco. No caso, eu naveguei até o painel de gerenciamento do meu provedor, mas esse processo é semelhante em várias plataformas.

  1. Escolha do tipo de armazenamento (HDD ou SSD, por exemplo).
  2. Escolha da localização (certifique-se de que o volume e a instância do servidor estejam na mesma região para evitar problemas de latência).
  3. Definição do tamanho e etiqueta do volume.
  4. Após confirmar, aguarde o volume estar “Ativo” antes de seguir com o próximo passo.

Ao término, o volume de armazenamento estava pronto para ser anexado à instância.

Anexando o Volume à Instância do Servidor

Para vincular o volume ao servidor:

  1. No painel de gerenciamento, selecione o volume criado e, em seguida, o servidor desejado.
  2. O volume será exibido como um novo dispositivo no sistema operacional.

Nesse ponto, o volume está pronto para ser montado no sistema, mas ainda precisa ser configurado.

Montando o Armazenamento em Bloco no Linux

A configuração de um novo volume no Linux exige que a partição seja preparada para armazenamento. Lembrando que essas etapas são para volumes recém-criados sem dados, então tenha sempre backup de qualquer informação crítica antes de proceder.

Verifique o Nome do Dispositivo: O primeiro volume em um servidor geralmente aparece como /dev/vda. Podemos usar o comando lsblk para verificar o nome exato do dispositivo:

$ lsblk
Enter fullscreen mode Exit fullscreen mode

Criação de Rótulo de Disco e Partição: O parted foi a ferramenta que usei para criar um rótulo de disco e uma partição no novo volume. Isso permite que o volume seja acessado pelo sistema de arquivos, no exemplo abaixo /vdb é o meu novo dispositivo:

$ sudo parted -s /dev/vdb mklabel gpt
$ sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%
Enter fullscreen mode Exit fullscreen mode

Formatação da Partição: Utilizei o sistema de arquivos EXT4, que é confiável e compatível com a maioria dos sistemas Linux:

$ mkfs.ext4 /dev/vdb1
Enter fullscreen mode Exit fullscreen mode

Movendo a Pasta /home para o Novo Disco
Com o volume configurado e formatado, o próximo passo foi transferir o conteúdo da pasta /home para o novo armazenamento.

Montagem Temporária: Primeiro, monte o volume no diretório onde você deseja armazenar os dados de /home:

$ sudo mkdir /mnt/newhome
$ sudo mount /dev/vdb1 /mnt/newhome
Enter fullscreen mode Exit fullscreen mode

Cópia dos Dados: Para preservar as permissões e propriedades, copiei os dados com o comando cp -Rp:

$ sudo cp -Rp /home/* /mnt/newhome

Enter fullscreen mode Exit fullscreen mode

Backup e Configuração de Montagem Automática: Renomeei a pasta atual /home para /home.backup, criei uma nova /home e adicionei uma entrada no arquivo /etc/fstab para que o sistema monte o volume automaticamente ao iniciar:

$ sudo mv /home /home.backup
$ sudo mkdir /home
$ sudo vim /etc/fstab
Enter fullscreen mode Exit fullscreen mode

Adicionei a seguinte linha para garantir a montagem automática:

/dev/vdb1 /home ext4 defaults 0 2
Enter fullscreen mode Exit fullscreen mode

Testando e Validando: Depois, usei o comando mount -a para confirmar a configuração do fstab, reiniciando o servidor para garantir que /home fosse montado conforme esperado.

$ sudo umount /dev/vdb1
$ sudo mount -a
$ sudo reboot
Enter fullscreen mode Exit fullscreen mode

Aprendizados e Reflexões

Esse processo foi uma ótima introdução ao gerenciamento de armazenamento no Linux, uma habilidade essencial para quem trabalha com DevOps e administração de sistemas. Foi desafiador no começo, pois cada comando precisava ser pensado e executado com cautela, principalmente ao mexer no diretório /home. Mesmo que pareça uma tarefa básica, esses passos ajudam a fortalecer o entendimento sobre montagem, partições e sistemas de arquivos, preparando-nos para desafios mais complexos no futuro.

Espero que este conteúdo ajude quem também estiver precisando expandir o armazenamento e tiver interesse em praticar essas técnicas. Obrigado pela leitura, e até o próximo post!

Top comments (0)