Pesquisa de site

Particionar uma unidade no Linux com GNU Parted


Aprenda os fundamentos do particionamento de um novo dispositivo de armazenamento e, em seguida, baixe nossa folha de dicas para manter as informações sempre à mão.

No século 21, tendemos a considerar o armazenamento de dados garantido. Temos muito, é relativamente acessível e há muitos tipos diferentes de armazenamento disponíveis. Não importa quanto espaço de armazenamento em nuvem você receba gratuitamente, não há nada como ter um disco rígido físico para seus dados realmente importantes (ou muito grandes, quando você mora em uma rede lenta). No entanto, poucos discos rígidos são vendidos imediatamente, prontos para uso – pelo menos em uma configuração ideal. Esteja você comprando uma nova unidade ou configurando um sistema com uma configuração diferente, você precisa saber como particionar uma unidade no Linux.

Este artigo demonstra o GNU Parted, uma das melhores ferramentas para particionar unidades. Se você preferir usar um aplicativo gráfico em vez de um comando de terminal, leia meu artigo sobre formatação de unidades para Linux.

Rótulos de disco, partições e sistemas de arquivos

Um disco rígido tecnicamente não requer muito software para servir como dispositivo de armazenamento. No entanto, usar uma unidade sem convenções modernas, como tabela de partição e sistema de arquivos, é difícil, impraticável e inseguro para seus dados.

Existem três conceitos importantes que você precisa saber sobre discos rígidos:

  • Um rótulo de disco ou tabela de partição são metadados colocados no início de uma unidade, servindo como uma pista para o computador lê-lo sobre que tipo de armazenamento está disponível e onde está localizado. na unidade.
  • Uma partição é um limite que identifica onde um sistema de arquivos está localizado. Por exemplo, se você tiver uma unidade de 512 GB, poderá ter uma partição nesse dispositivo que ocupe toda a unidade (512 GB), ou duas partições com 256 GB cada, ou três partições ocupando alguma outra variação de tamanhos, e assim sobre.
  • Um sistema de arquivos é um esquema de armazenamento acordado entre um disco rígido e um computador. Um computador deve saber como ler um sistema de arquivos para reunir todos os dados armazenados na unidade e deve saber como gravar dados de volta no sistema de arquivos para manter a integridade dos dados.

O aplicativo GNU Parted gerencia os dois primeiros conceitos: rótulos de disco e partições. O Parted tem algum conhecimento sobre sistemas de arquivos, mas deixa os detalhes da implementação do sistema de arquivos para outras ferramentas como mkfs.

[Baixe a folha de referências do GNU Parted]

Localizando a unidade

Antes de usar o GNU Parted, você deve ter certeza de onde sua unidade está localizada no sistema. Primeiro, conecte o disco rígido que deseja formatar ao seu sistema e, em seguida, use o comando parted para ver o que está conectado ao seu computador:

$ parted /dev/sda print devices
/dev/sda (2000GB)
/dev/sdb (1000GB)
/dev/sdc (1940MB)

O dispositivo que você conectou mais recentemente recebe um nome posterior no alfabeto do que os dispositivos que estão conectados há mais tempo. Neste exemplo, /dev/sdc é provavelmente a unidade que acabei de conectar. Posso confirmar isso pelo seu tamanho porque sei que o pen drive USB que conectei tem apenas 2 GB (1940 MB é próximo o suficiente), em comparação com as unidades principais da minha estação de trabalho, que têm terabytes de tamanho. Se não tiver certeza, você pode obter mais informações sobre a unidade que você acha que deseja particionar:

$ parted /dev/sdc print 
Model: Yoyodyne Tiny Drive 1.0 (scsi)    
Disk /dev/sdc: 1940MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  2048kB  1024kB  BS           Bloat  Hidden
 2      2049kB  1939MB  1937MB  FAT32        MyDrive

Algumas unidades fornecem mais metadados do que outras. Este se identifica como um drive da Yoyodyne, que é exatamente a marca do drive físico. Além disso, ele contém uma pequena partição oculta na frente da unidade com alguns bloatware seguida por uma partição FAT32 compatível com Windows. Esta é definitivamente a unidade que pretendo reformatar.

Antes de continuar, certifique-se de ter identificado a unidade correta que deseja particionar. Reparticionar a unidade errada resulta em perda de dados. Por segurança, todos os comandos potencialmente destrutivos neste artigo fazem referência ao dispositivo /dev/sdX, que é improvável que você tenha em seu sistema .

Criando um rótulo de disco ou tabela de partição

Para criar uma partição em uma unidade, a unidade deve ter um rótulo de disco. Um rótulo de disco também é chamado de tabela de partição, então o Parted aceita qualquer um dos termos.

Para criar um rótulo de disco, use o subcomando mklabel ou mktable:

$ parted /dev/sdX mklabel gpt

Este comando cria um rótulo gpt na frente da unidade localizada em /dev/sdX, apagando qualquer rótulo que possa existir. Este é um processo rápido porque tudo o que está sendo substituído são metadados sobre partições.

Criando uma partição

Para criar uma partição em uma unidade, use o subcomando mkpart, seguido por um nome opcional para sua partição, seguido pelos pontos inicial e final da partição. Se você precisar apenas de uma partição em sua unidade, o dimensionamento será fácil: comece em 1 e termine em 100%. Use a opção --align opt para permitir que o Parted ajuste a posição dos limites da partição para melhor desempenho:

$ parted /dev/sdX --align opt \
mkpart example 1 100%

Visualize sua nova partição com o subcomando print:

$ parted /dev/sdX print
Model: Yoyodyne Tiny Drive 1.0 (scsi)
Disk /dev/sdi: 1940MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size   
 1      1049kB  1939MB  1938MB

Você não precisa usar o disco inteiro para uma partição. A vantagem de uma partição é que mais de um sistema de arquivos pode existir em uma unidade sem interferir nas outras partições. Ao dimensionar partições, você pode usar o subcomando unit para definir que tipo de medidas deseja usar. Parted entende setores, cilindros, cabeçotes, bytes, kilobytes, megabytes, gigabytes, terabytes e porcentagens.

Você também pode especificar para qual sistema de arquivos pretende usar uma partição. Isso não cria o sistema de arquivos, mas fornece metadados que podem ser úteis posteriormente.

Aqui está uma divisão 50-50, uma para um sistema de arquivos XFS e outra para um sistema de arquivos EXT4:

$ parted /dev/sdX --align opt \
mkpart xfs 1 50%
$ parted /dev/sdX --align opt \
mkpart ext4 51% 100%

Nomeando uma partição

Além de marcar para qual sistema de arquivos uma partição se destina, você também pode nomear cada partição. Alguns gerenciadores de arquivos e utilitários leem nomes de partições, o que pode ajudá-lo a identificar unidades. Por exemplo, muitas vezes tenho várias unidades diferentes conectadas à minha estação de trabalho de mídia, cada uma pertencente a um projeto diferente. Ao criar essas unidades, eu nomeio a partição e o sistema de arquivos para que, não importa como eu olhe para o meu sistema, os locais com dados importantes sejam claramente identificados.

Para nomear uma partição, você deve saber seu número:

$ parted /dev/sdX print
[...]
Number  Start   End     Size   File system  Name     Flags
 1      1049kB  990MB   989MB  xfs          example
 2      1009MB  1939MB  930MB  ext4         noname

Para nomear a partição 1:

$ parted /dev/sdX name 1 example
$ parted /dev/sdX print
[...]
Number  Start   End     Size   File system  Name     Flags
 1      1049kB  990MB   989MB  xfs          example
 2      1009MB  1939MB  930MB  ext4         noname

Crie um sistema de arquivos

Para que sua unidade seja útil, você deve criar um sistema de arquivos em sua nova partição. GNU Parted não faz isso porque é apenas um gerenciador de partições. O comando do Linux para criar um sistema de arquivos em uma unidade é mkfs, mas existem utilitários úteis com alias que você pode usar para criar um tipo específico de sistema de arquivos. Por exemplo, mkfs.ext4 cria um sistema de arquivos EXT4, enquanto mkfs.xfs cria um sistema de arquivos XFS e assim por diante.

Sua partição está localizada "dentro" da unidade, então, em vez de criar um sistema de arquivos em /dev/sdX, você cria seu sistema de arquivos em /dev/sdX1 para a primeira partição, /dev/sdX2 para a segunda partição e assim por diante.

Aqui está um exemplo de criação de um sistema de arquivos XFS:

$ sudo mkfs.xfs -L mydrive /dev/sdX1

Baixe nossa folha de dicas

Parted é um comando flexível e poderoso. Você pode emitir comandos, conforme demonstrado neste artigo, ou ativar um modo interativo para estar constantemente "conectado" a uma unidade especificada:

$ parted /dev/sdX
(parted) print
[...]
Number  Start   End     Size   File system  Name     Flags
 1      1049kB  990MB   989MB  xfs          example
 2      1009MB  1939MB  930MB  ext4         noname

(parted) name 1 mydrive
(parted)

Se você pretende usar o Parted com frequência, baixe nossa folha de dicas do GNU Parted para ter todos os subcomandos necessários à mão.

Artigos relacionados: