Idioma
Categoria
Pesquisar

Como criar partições GPT e formatá-las em NTFS no Linux

Guia completo para gerenciar discos no Linux: crie partições GPT ou MBR, altere nome e tipo, e formate em NTFS/ext4. Aprenda a remover tabelas de partições. Exemplos completos e detalhados.

Como criar partições GPT e formatá-las em NTFS no Linux
Em Terminal Por Rudi Drusian Lange
Publicado em
Última atualização

Ambiente

Este tutorial foi elaborado utilizando o terminal do Slackware 15.

Guia Rápido

Se você já sabe o que está fazendo e precisa apenas de informações adicionais ou esqueceu algum comando, este guia rápido é para você.

# bash

# Listar discos e partições
lsblk

# Gerenciar partições
gdisk /dev/sdX

# No gdisk
p Lista partições
? Mostra ajuda
n Adiciona partição
d Remove partição
c Altera o nome da partição
t Altera o tipo da partição
x Habilita modo avançado
w Grava as alterações no disco

# Tipos de partições
8300 Sistema de arquivos Linux (ext4, xfs, etc)
8200 Linux swap
0700 Microsoft basic data (NTFS, FAT)

# Formata com ext4
mkfs -t ext4 /dev/sdc1

# Formata com NTFS
mkntfs -f /dev/sdc1

A seguir, um tutorial completo com exemplos e explicações detalhadas sobre o particionamento e formatação de discos no Linux.

Gerenciamento de discos e partições

Para começar, liste os discos e suas partições utilizando o comando lsblk.

# bash

lsblk


NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda      8:0    0 465.8G  0 disk
├─sda1   8:1    0    10G  0 part /tmp 
├─sda2   8:2    0    10G  0 part /var
└─sda3   8:3    0 445.8G  0 part /home
sdb      8:16   0  29.8G  0 disk
├─sdb1   8:17   0   100M  0 part /boot/efi
└─sdb2   8:18   0  29.7G  0 part /
sdc      8:32   1  14.6G  0 disk  
└─sdc1   8:33   1  14.6G  0 part

Neste artigo o disco que será manipulado está identificado como sdc. Ele possui uma partição já criada, identificada como sdc1. Para identificar corretamente o disco que deseja manipular, verifique o tamanho, as partições existentes e o ponto de montagem (se houver).

Caso ainda haja dúvidas, execute o comando lsblk com o disco desconectado e, em seguida, conecte o disco e execute o comando novamente. Dessa forma, você poderá comparar as saídas e identificar o disco corretamente.

MBR ou GPT

Sempre que houver suporte, a melhor escolha é utilizar a tabela de partições GPT. Ela oferece maior segurança, suporte a discos de maior capacidade e permite um número maior de partições.

A tabela MBR deve ser utilizada apenas em casos específicos, como: Sistemas antigos que utilizam BIOS legado ou discos externos que serão usados em múltiplos hardwares, para garantir a compatibilidade máxima.

Para manipular partições em discos com GPT, utiliza-se o gdisk enquanto para MBR é usado o fdisk. Para iniciar o particionamento execute gdisk /dev/sdX, onde X é a identificação específica do seu disco.

# bash

gdisk /dev/sdc

Partition table scan:
   MBR: protective
   BSD: not present
   APM: not present
   GPT: present

Found valid GPT with protective MBR; using GPT.
Command (? for help):

Agora estamos dentro do console de comandos do gdisk. Esclarecendo:

GPT: present O disco está configurado com GPT.

MBR: protective Existe uma MBR protetiva, que impede que ferramentas antigas (que só reconhecem MBR) interpretem o disco como não particionado e tentem formatá-lo.

Dentro do console do gdisk, você pode utilizar os seguintes comandos:

  • Digite p para listar as partições atuais do disco.
  • Digite ? para exibir a lista de comandos disponíveis.
  • Digite x para habilitar funcionalidades avançadas (recomendado apenas para especialistas).
  • Digite ? novamente para ver a lista completa de comandos avançados.

Destruindo a tabela de partições GPT

Vamos remover completamente as tabelas de partições do disco, tanto a GPT quanto a MBR protetiva. Por que fazer isso? Para mudar a tabela de partições. Ao destruí-la, o disco ficará sem formatação, como se tivesse saído de fábrica, permitindo que você escolha entre criar uma tabela de partição MBR com fdisk ou recriar a tabela GPT com o gdisk.

# bash

gdisk /dev/sdc

Partition table scan:
   MBR: protective
   BSD: not present
   APM: not present
   GPT: present

Command (? for help): x # Habilita comandos avançados

Expert command (? for help): z # Remove a tabela GPT

About to wipe out GPT on /dev/sdc. Proceed? (Y/N): y # Confirma a remoção
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Blank out MBR? (Y/N): y # Remove a MBR protetiva

Ao final do comando, o gdisk será encerrado. Entre novamente e repare que o disco não possui nenhuma tabela presente.

# bash

gdisk /dev/sdc

Partition table scan:
   MBR: not present
   BSD: not present
   APM: not present
   GPT: not present

Creating new GPT entries in memory.

Command (? for help):

Ao criar novas partições em um disco sem tabelas de partições o gdisk criará automaticamente a estrutura GPT, juntamente com a MBR protetiva.

Criando partições no Linux

Vamos começar criando uma única partição para o Linux, utilizando todo o espaço disponível no disco.

# bash

gdisk /dev/sdc

Command (? for help): n # Para adicionar uma nova partição
Partition number (1-128, default 1): Enter ↲ # Número da partição
First sector (34-30529502, default = 2048) or {+-}size{KMGTP}: Enter ↲
Last sector (2048-30529502, default = 30529502) or {+-}size{KMGTP}: Enter ↲
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300): Enter ↲

Command (? for help): p # Lista as partições

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        30529502   14.6 GiB    8300  Linux filesystem

Command (? for help): w # Escreve as alterações em disco

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y # Confirma
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.
  • n  Inicia o processo para adicionar uma nova partição
  • Partition number (1-128, default 1)  Número de identificação da partição dentro da tabela de particionamento. Permite a manipulação individual de cada partição. Ao pressionar Enter ↲ o próximo número sequencial disponível será utilizado.
  • First sector  Primeiro setor a partir do qual a partição será criada (início da partição). A não ser que você saiba o que está fazendo, pressione Enter ↲ para usar o primeiro setor disponível.
  • Last sector   Último setor, até onde a partição deve se extender. Esta opção vem pré configurada com o último setor disponível. Se você deseja criar uma única partição com todo o espaço do disco, basta pressionar Enter ↲.
  • {+-}size{KMGTP}  Kilo Mega Giga Tera Peta Bytes. Para criar partições com tamanhos personalizados, defina o valor do último setor com o dimensionamento desejado, por exemplo, +250G. Isso criará uma partição de 250 Gigabytes.
  • Current type is 8300 (Linux filesystem)  Indica o tipo de partição atual.
  • Hex code or GUID (L to show codes, Enter = 8300):  Para listar outros tipos pressiona L + Enter ↲. Um prompt de pesquisa será disponibilizado, digite o que está procurando e pressione Enter ↲. Pressione Enter ↲ sem digitar nada para exibir a lista completa dos tipos disponíveis.
  • p lista as partições, w escreve a partição no disco e y confirma.

Quando se trata de criação e exclusão de partições, todas as alterações configuradas no gdisk só são gravadas no disco após usar a opção w (write). Portanto, se você cometer algum erro durante o processo, basta sair do programa ( q ) para descartar as alterações.

Por outro lado, ao concluir as alterações desejadas, não se esqueça de gravar as mudanças no disco utilizando a opção w antes de sair. Caso contrário, todo o seu trabalho será perdido.

Aqui estão os códigos dos tipos de partições mais comuns para Linux e Windows:

  • 8300 (Linux filesystem) Para usar sistemas de arquivos do Linux, como ext4 e xfs.
  • 8200 (Linux swap) Para criar uma partição swap no Linux.
  • 0700 (Microsoft basic data) Para criar partições compatíveis com Windows, como NTFS ou FAT.

Pesquise para outros sistemas.

Alterando o nome da partição

No console do gdisk, utilize o comando c seguido pelo índice da partição (caso haja mais de uma). Digite o novo nome e grave as alterações com w. Observe que o novo nome só será reconhecido pelo sistema após a formatação da partição.

Excluindo uma partição

Dentro do gdisk, use a opção d e depois o número de índice da partição que deseja excluir. Grave as alterações em disco com w.

Se houver apenas uma única partição, ela será excluída automaticamente, sem a necessidade de especificar o número de índice. Use p para listar as partições e confirmar se as alterações foram aplicadas corretamente.

Antes de formatar

As partições no Linux são identificadas pelo nome do disco seguido de um número sequencial. Em nosso exemplo, o disco é sdc, e suas partições seriam sdc1, sdc2, e assim por diante.

Use o comando lsblk para encontrar o nome atribuído à sua partição. No nosso caso, será considerado sdc1. Certifique-se de que as partições foram criadas com os tipos apropriados antes de formatá-las.

Formatando com ext4

# bash

# Formata como ext4
mkfs -t ext4 /dev/sdc1

# Se um sistema de arquivos estiver presente, pode ser exibido um aviso
/dev/sdc1 contains a vfat file system labelled 'WINDOWS'
Proceed anyway? (y,N) y # Confirme

Após a conclusão, a partição estará pronta para uso no Linux.

Se ao montar a partição você não conseguir gravar dados no disco, isso pode ocorrer porque o ponto de montagem está atribuído ao usuário root.

Se este for o seu caso, identifique o ponto de montagem e altere a permissão para seu usuário e grupo:

# bash

lsblk

sdc      8:32   1  14.6G  0 disk
└─sdc1   8:33   1  14.6G  0 part /run/media/seu_usuario/sua_particao

chown -R seu_usuario:seu_grupo /run/media/seu_usuario/sua_particao

Alterando tipo e nome

Continuando a partir do exemplo anterior, será demonstrado como alterar o tipo e o nome da partição antes de formatar com NTFS. Se você já criou a partição com o tipo adequado pule o próximo passo.

# bash

gdisk /dev/sdc

Command (? for help): p # Lista partições

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        30529502   14.6 GiB    8300  Linux

Command (? for help): t # Altera o tipo

Using 1
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300): 0700 # Novo tipo
Changed type of partition to 'Microsoft basic data'

Command (? for help): c # Muda o nome

Using 1
Enter name: Windows # Novo nome

Command (? for help): p # Lista partições


Number  Start (sector    End (sector)  Size       Code  Name
   1            2048        30529502   14.6 GiB    0700  Windows

Command (? for help): w # Grava em disco

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y # Confirma
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.

Formatando com NTFS

# bash

mkntfs -f /dev/sdc1

Cluster size has been automatically set to 4096 bytes.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.

Use a opção -f ou --fast para uma formatação rápida. Caso contrário, o processo pode demorar horas, dependendo do tamanho do disco.

Tabela de partições MBR

Para gerenciar partições com a tabela MBR, utiliza-se o comando fdisk. A seguir, será demonstrado um exemplo prático completo, que inclui:

  1. Remover a tabela de partições GPT de um disco.
  2. Criar duas novas partições usando a tabela MBR.
  3. Formatá-las, uma com ext4 e a outra com NTFS.

Este exemplo utiliza toda a base de conhecimento disponibilizada neste tutorial.

# bash

# Nosso disco: sdc
gdisk /dev/sdc

# Habilita comandos avançados
Command (? for help): x

# Destroi estrutura GPT e sai
Expert command (? for help): z

# Confirma
About to wipe out GPT on /dev/sdc. Proceed? (Y/N): y
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.

# Remove MBR protetiva
Blank out MBR? (Y/N): y

# Inicia o fdisk
fdisk /dev/sdc

# Cria uma nova partição
Command (m for help): n

# Define o tipo como primária
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p

# Define o índice da partição (padrão: 1)
Partition number (1-4, default 1): Enter ↲

# Define o primeiro setor (padrão: 2048)
First sector (2048-30529535, default 2048): Enter ↲

# Define o tamanho da partição em 7 Gigabytes
Last sector, +/-sectors or +/-size{K,M,G,T,P}: +7G

Created a new partition 1 of type 'Linux' and of size 7 GiB.
Partition #1 contains a ntfs signature.

# Remove configuração antiga
Do you want to remove the signature? [Y]es/[N]o: y

The signature will be removed by a write command.

# Cria uma segunda partição
Command (m for help): n

# Define o tipo como primária
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p

# Define o índice da partição (padrão: 2)
Partition number (2-4, default 2): Enter ↲

# Define o primeiro setor (padrão: próximo disponível)
First sector (14682112-30529535, default 14682112): Enter ↲

# Define o último setor, usando o restante do disco
Last sector, +/-sectors or +/-size{K,M,G,T,P}:  Enter ↲

Created a new partition 2 of type 'Linux' and of size 7.6 GiB.

# Mostra as partições recém-criadas
Command (m for help): p

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sdc1           2048 14682111 14680064    7G 83 Linux
/dev/sdc2       14682112 30529535 15847424  7.6G 83 Linux

Filesystem/RAID signature on partition 1 will be wiped.

# Altera o tipo da partição 2 para NTFS
Command (m for help): t

# Escolhe a partição número 2
Partition number (1,2, default 2): 2

# Define o tipo como HPFS/NTFS/exFAT (código 07)
Hex code or alias (type L to list all): 07

Changed type of partition 'Empty' to 'HPFS/NTFS/exFAT'.

# Lista as partições
Command (m for help): p

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sdc1           2048 14682111 14680064    7G 83 Linux
/dev/sdc2       14682112 30529535 15847424  7.6G  7 HPFS/NTFS/exFAT

# Escreve as alterações no disco
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

# Formatando partição 1 com ext4
# -O 64bit: Habilita suporte para sistema de arquivos 64 bits
mkfs -t ext4 -O 64bit /dev/sdc1

# Confirme a formatação
mke2fs 1.46.5 (30-Dec-2021)
/dev/sdc1 contains `DOS/MBR boot sector...`
Proceed anyway? (y,N) y

Creating filesystem with 1835008 4k blocks and 458752 inodes
Filesystem UUID: 1b5d99d0-9647-4cd5-96e4-b91f49ffab0f
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

# Formatando partição 2 com NTFS
mkntfs -f /dev/sdc2
Cluster size has been automatically set to 4096 bytes.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.

# Nomeia como "Linux" a partição ext4
e2label /dev/sdc1 "Linux"

# Nomeia como "Windows" a partição NTFS
ntfslabel /dev/sdc2 "Windows"

Partições sendo reconhecidas no KDE  ↓

partitions

Referências

A base deste artigo foi construída com conhecimento e experiência pessoal, somados a consultas e testes.

Parte do conteúdo deste site, incluindo textos, imagens, gráficos e outros materiais, pode ser gerado ou aprimorado por ferramentas de inteligência artificial (IA). Para mais detalhes sobre o uso de IA, consulte nosso Termo de Uso.