Particionamento no linux: Melhores Práticas

Compartilhe:

tela do monitor que tem códigos de particionamento do lado direito e do lado esquerdo um gráfico em formato pizza ilustrando como distribuir o espaço de armazenamento para os conteúdos de diretórios do sistema linux

Vai instalar um sistema linux no servidor ou no computador pessoal e não sabe como particionar ?

Acredite, muitos passam ou já passaram por isso, e fazer um bom particionamento no Linux é uma etapa fundamental para quem não quer ter problemas no futuro.

E para responder o máximo de dúvidas possíveis, esse guia ensina as melhores práticas de particionamento no linux tanto para servidores quanto para desktop. Assim, saberá quanto de espaço dedicar para determinada parte do sistema.

Também será ensinado o que são partições, tabelas de partições e pontos de montagem para que tenha domínio sobre os conceitos essenciais para ter domínio sobre particionamento.

Por que devo particionar ?

O Particionamento é feito para ter um melhor controle e aproveitamento sobre o espaço de armazenamento. A seguir tem uma lista com pontos relevantes que justificam por que fazer o particionamento no linux:

  • Isolamento de Problemas: Dedicar uma partição para /home, por exemplo, é uma excelente prática para desktops ou até mesmo para servidores (depende da aplicação instalada no servidor).

Porque evita que as contas de usuários ocupem todo o espaço do dispositivo de armazenamento, e se todo espaço estiver ocupado o sistema fica inoperante.

  • Gerenciamento de backups: Dedicar uma partição para dados específicos, por exemplo, para sites que ficam armazenados em /var/www, facilita a rotina de backup, podendo fazer backup apenas dos arquivos do site(no exemplo) que estão dentro da localização.
  • Melhorar o funcionamento das aplicações: Cada partição pode usar um sistema de arquivos, assim, é possível usar uma partição com o sistema de arquivos mais indicado para uma aplicação específica implementada no servidor.

Em resumo, o particionamento fornece formas de fazer uma melhor administração do espaço de armazenamento.

Como fazer particionamento no linux ?

Para fazer particionamento no linux do jeito certo é essencial planejar, e para fazer um bom planejamento é obrigatório entender o padrão Filesystem Hierarchy Standard (FHS) usado no linux e escolher o tipo de tabela de partições usada no projeto.

É importante saber como é organizada a estrutura de diretórios no linux e o que cada diretório armazena. Assim, é possível, por exemplo, dimensionar o espaço de armazenamento adequado para cada parte do sistema.

Diretórios como: /run, /bin, /sbin, /etc, /lib, /dev, /sys e /proc devem ficar na mesma partição onde está armazenado o diretório / (raiz).

A razão principal para os diretórios /bin, /sbin, /etc e /lib ficarem na mesma partição onde fica o diretório / (raiz) é por conta do processo de boot do sistema. Abaixo tem um resumo sobre cada um:

/bin – contém comandos essenciais como: ls, mount, umount, mv, sh. Esses comandos são necessários antes mesmo de montar outras partições.

/sbin – contém programas administrativos essenciais, como: fsck, sulogin, insmod, init. sem vários comandos de /sbin o sistema pode não iniciar no modo single-user ou reparar o sistema de arquivos.

/lib – Armazena bibliotecas usadas pelos programas em /bin e /sbin. Se /lib estiver inacessível, nenhum binário dinâmico executa e logo o sistema trava no boot.

/etc – Arquivos de configuração, por exemplo: o arquivo /etc/fstab define quais sistemas de arquivos devem ser montados. Sem /etc, o sistema não sabe nem quais sistemas de arquivos montar e em quais partições ficam.

Resumindo, se o conteúdo desses diretórios /lib, /bin, /sbin e /etc não estão disponíveis durante o boot o sistema pode não iniciar.

Os diretórios /dev, /sys e /proc tem seu conteúdo armazenado na memória enquanto o sistema está em execução, se o computador/servidor for desligado nada mais existe lá, por essa razão é desnecessário dedicar partições para eles.

E o diretório /run contém dados desde a última inicialização e algumas informações que são usadas pelos processos em tempo de execução (como: arquivos de sockets) e seu conteúdo deve ser apagado quando o sistema for reiniciado, por isso não precisa de partição dedicada.

Tabela de Partições MBR ou GPT qual usar ?

Uma parte essencial no planejamento do projeto é escolher o tipo de tabela de partições que será usada no dispositivo de armazenamento do servidor ou desktop.

A escolha de qual tabela de partição usar no dispositivo de armazenamento depende de vários fatores, como: hardware, sistema operacional instalado, necessidade do usuário ou negócio da empresa.

A seguir tem uma lista com motivos do por que escolher MBR ou GPT:

Escolha a tabela de partições MBR quando:

  • Precisar fazer dual-boot com Windows (ambos 32-bit e 64-bit) em um computador que usa BIOS.
  • Instalar um S.O em um hardware baseado em BIOS antigos (fabricado antes de 2010), escolha o esquema MBR, se for GPT algumas BIOS antigas podem não suportar.

Escolha a tabela de partições GPT quando:

  • Precisar fazer dual-boot com Windows 64-bit em um computador que usa UEFI.
  • É necessário ter um espaço de armazenamento maior que 2 TiB (Tebibytes).
  • Precisar inicializar computadores que usam UEFI, por que algumas implementações de UEFI não suportam inicializar a partir do esquema MBR.
  • Fornecer um nome para partição independente do sistema de arquivos.
  • Dividir o espaço total do dispositivo em muitas partições, por padrão, a tabela de partições GPT contém espaço para definir até 128 partições.

Após escolher a tabela de partições do projeto e aprender sobre os diretórios que não podem ficar em partições separadas, levante mais algumas informações respondendo as seguintes perguntas antes de particionar:

  • Será particionado o HD/SSD de um desktop ou servidor ?
  • Se for servidor qual aplicação será implementada no servidor ?
  • Terá muitos usuários usando o sistema ?

As respostas para cada pergunta impacta diretamente na escolha do layout do dispositivo de armazenamento no servidor ou desktop.

Particionamento para Servidor

Para particionar um dispositivo de armazenamento em um servidor linux é importante criar uma partição para SWAP e partições dedicadas para três diretórios /boot/efi, / (raiz) e /var.

Particionamento no linux: Ilustração de particionamento em uma instalação do linux para servidor, uma partição dedicada para /boot/efi, outra para /, outra para /var, outra para /tmp, outra para /opt e uma para SWAP.
  • /boot/efi – Crie uma partição para esse ponto de montagem, por que os computadores atuais usam o firmware UEFI, e aqui ficam os arquivos que são lidos durante o boot pelo UEFI.

Para /boot/efi crie uma partição com 500 MB de espaço é mais que o suficiente, o sistema de arquivos deve ser FAT32.

  • / (raiz) – Não é necessário para um servidor ter tanto espaço reservado para o diretório / (raiz), por que os diretórios que ocupam mais espaço de armazenamento vão ter partições dedicadas.

Assim, para uma partição que armazenará o conteúdo de / (raiz), pode-se dedicar 40 GB. O sistema de arquivos pode ser ext4 ou xfs, somente use btrfs se precisar de recursos como compressão de dados e/ou snapshots.

  • /var – Para o /var deve-se criar uma partição de no mínimo 120 GB, se possível usar LVM é uma excelente prática, para possibilitar o redimensionamento futuro aumentando o espaço.

O motivo para dedicar tanto espaço é que o diretório /var tem dados variáveis, que sofrem muitos acessos de leitura e escrita o tempo todo.

Por exemplo, dentro do /var tem muito log do sistema e das aplicações (/var/log), se for um servidor web pode ter muitos sites (/var/www), pode ter também banco de dados mysql (/var/lib/mysql).

Você pode perguntar: Mas por que vou manter os logs do servidor por tanto tempo ?

A resposta é: Para auditoria e solução de problemas, os registros são importantes para segurança e estabilidade do servidor e lógico para o negócio da empresa.

  • SWAP – É uma área de troca, o kernel linux pode enviar os dados que estão ociosos na memória RAM para a partição de SWAP. Para servidores crie uma partição com 8 GB à 12 GB de espaço.

Depois de definir o layout para esses três diretórios (/boot/efi, / e /var), agora é hora de dedicar o espaço ideal para aplicação que será implementada no servidor.

Pasta representando /opt, com setas apontando para logo marca de aplicações como zabbix, zimbra e wazuh, que podem ser armazenadas em /opt
  • /opt – É usado para instalação de softwares proprietários ou autônomos que mantêm suas próprias bibliotecas, binários, arquivos de configuração e outras informações dentro de subdiretórios próprios em /opt.

Por exemplo, o sistema de e-mail ZIMBRA é instalado dentro de /opt, alguns administradores também optam por instalar sistemas como ZABBIX e WAZUH em /opt.

Aplicações em um ambiente de produção gravam muito, e o dados precisam ser mantidos, logo, futuramente vai precisar aumentar o espaço. Então uma prática recomendada é reservar, se possível, o espaço de um HD/SSD inteiro usando LVM caso instale uma aplicação no /opt.

Sistemas para servidores fazem muito acesso de leitura, e dedicar um dispositivo de armazenamento somente para aplicação evita concorrência na leitura da aplicação com outras partes do sistema operacional.

Assim, é essencial conhecer a aplicação que será implementada no servidor para definir o espaço de armazenamento correto. Porque precisará saber a quantidade de informação que será gravada e mantida e por quanto tempo os dados serão mantidos.

  • /tmp – Armazena arquivos temporários, todo usuário do sistema pode gravar nele, considere se possível dedicar uma partição de 10 GB para o /tmp.

Como todo mundo pode gravar em /tmp, uma brecha de segurança na aplicação que usa esse diretório pode resultar no comprometimento do sistema inteiro.

Se a aplicação não precisa executar nenhum binário em /tmp, com uma partição dedicada pode-se montar o sistema de arquivos com a opção de montagem noexec, impedindo que binários sejam executados diretamente na partição.

Particionamento para Desktop

Para uma estação de trabalho (desktop) que tem linux instalado, é importante criar uma partição para armazenar o conteúdo de cada um dos seguintes diretórios:

Particionamento no linux: Ilustração de particionamento em uma instalação para desktop, uma partição dedicada para /boot/efi, outra para / e outra para /home
  • /boot/efi – Em computadores que usam UEFI o /boot/efi contém os binários para inicializar o linux e serve como ponto de montagem do sistema de arquivos da partição ESP (EFI System Partition). O /boot/efi é acessado somente no momento que o computador é ligado.

A partição ESP tem um tamanho pequeno, crie uma partição com 500 MB de espaço e o sistema de arquivos deve ser FAT32.

  • / (raiz) – Para uma estação de trabalho é recomendado ter uma partição com 70 GB à 80 GB de espaço dedicado para o diretório / (raiz). Pode parecer pouco espaço mas é o suficiente, já que não precisa reter logs e nem dados de aplicações para servidores.

Somente reserve mais espaço caso precise instalar aplicações, em que cada uma, vai ocupar muito espaço armazenamento.

Na partição destinada ao diretório / (raiz) pode-se usar os sistemas de arquivos xfs, ext4 ou btrfs. Se tiver conhecimento e a distribuição linux dê suporte, use o btrfs que tem mais recursos como compressão de dados e snapshots.

  • /home – Criar uma partição para a pasta pessoal (/home) dos usuários possibilita reinstalar ou atualizar o sistema operacional sem apagar arquivos pessoais e configurações de usuários.

Separar o /home do diretório / (raiz) também impede que uma conta de usuário consiga encher todo o HD/SSD. Na partição destinada ao /home pode-se usar os sistemas de arquivos xfs, ext4 ou btrfs.

Caso o computador seja usado por duas ou mais pessoas pode-se aplicar um controle de cotas no sistema de arquivos da partição, limitando o espaço que cada usuário pode usar, assim um usuário não vai ocupar todo o espaço da partição destinada ao /home.

Então, lembre-se, no seu computador pessoal sempre dedique uma partição ao “/home”.

Comandos para particionamento no Linux

Aqui destaco dois comandos que podem ser usados pelo terminal para particionar um HD/SSD no linux:

Comando partedGerencie partições no linux usando o comando parted.
Comando fdiskCrie, Liste e exclua partições no linux

Recomendo fortemente leitura dos posts que ensinam os comandos, para complementar este conteúdo e colocar tudo em prática.

Erros comuns que você deve evitar

A lista a seguir tem os erros mais comuns para quem não planejou o particionamento no linux:

  • Armazenar tudo em uma única partição.
  • Não implementar sistemas de armazenamento como LVM que possibilita aumentar o espaço no futuro.
  • Ignorar o diretório /var em servidores, ou seja, não dedicar pelo menos uma partição para /var.

Esses deslizes podem custar caro no futuro, por isso é tão importante planejar o dimensionamento do espaço para cada parte do sistema e aplicação implementada no servidor.

Conclusão

Aplicar boas práticas de particionamento no Linux é investir em escalabilidade e segurança e ter um sistema estável por muito tempo. Um layout bem pensado reduz dores de cabeça no futuro, pode ajudar a melhorar o desempenho e facilita muito a administração do sistema.

Comece sempre com um bom planejamento, separe áreas críticas, use LVM quando possível. Com isso, você terá um ambiente Linux muito mais profissional e preparado para crescer.

Gostou das dicas e práticas de particionamento ou tem alguma dúvida ? deixe seu comentário.

Perguntas frequentes (FAQ) sobre particionamento no linux

O que são partições ?

Partições são divisões lógicas do espaço de um dispositivo de armazenamento (HD/SSD), ou seja, o espaço total de um HD ou SSD pode ser dividido em partes, em partições.

É possível ter dois ou mais sistemas de arquivos em uma mesma partição ?

Não, cada partição tem apenas um sistema de arquivos.

Posso criar um particionamento para ter dois sistemas operacionais no mesmo computador (dual boot) ?

Claro que sim, mas é necessário particionar corretamente o dispositivo de armazenamento (HD/SSD) para ter cada sistema em partições diferentes.

Posso criar uma partição maior que 2 TiB (Tebibytes) em um HD que usa o esquema de particionamento MBR ?

Não, para criar uma partição maior que 2TiB (Tebibytes) é necessário utilizar a tabela das partições do tipo GPT.

O que são pontos de montagem no linux ?

É a localização completa de um diretório na estrutura de diretórios que será vinculado ao sistema de arquivos do dispositivo de armazenamento.

Navegue por tópicos:

Foto de Edson Oliveira
Edson Oliveira

Especialista em Linux, trabalhando com TI tem experiência no gerenciamento, solução de problemas e suporte de servidores linux em ambientes corporativos.

Professor de cursos voltados a linux, tecnologias open source e certificações LPI. Possui as certificações LPIC-1, LPIC-2 e LPIC-3 (Mixed Environment).

Navegue por tópicos:

Você também pode gostar:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Valorizamos sua privacidade

Utilizamos cookies para aprimorar sua experiência de navegação, exibir anúncios ou conteúdo personalizado e analisar nosso tráfego. Ao clicar no botão “Aceitar todos”, você concorda com nosso uso de cookies.

Para mais informações leia nossa Política de Privacidade.