Parted – Manipulando Partições no Linux

19 fev

Parted – Manipulando Partições no Linux

Design sem nome (2)

Introdução

 

O utilitário parted é um programa utilizado para manipular partições no Linux. Com ele é possível adicionar, deletar, editar e redimensionar partições existentes nos discos, além de poder manipular os sistemas de arquivos dessas partições. O parted é semelhante ao já conhecido fdisk, porém a grande vantagem é a possibilidade em se trabalhar com a estrutura GPT (Tabela de Partição Guid) que é um novo layout relativo a particionamento de discos rígidos. O GPT traz muitos benefícios comparativamente ao tradicional MBR (Master boot record), dos quais se destacam:

 

  • Suporte para partições acima dos 2 TB (ou seja, 2^64 blocos, um máximo de 1 ZB).
  • Apesar de poderem ser criadas um número ilimitado de partições, o GPT “apenas” suporta 128 partições primárias
  • Melhor estrutura/organização ao nível das partições
  • Possui mecanismos para detecção da dados e partições corrompidas
  • Aumenta a probabilidade de recuperação de dados, na existência de sectores do disco danificados, uma vez que tem um cabeçalho secundário (Secondary GPT Header) que funciona como backup da tabela de partições.

 

O Parted tem dois modos: linha de comando e interativo.

 

Comandos

 

Versão utilizada: GNU Parted 2.1

Os comandos “RESIZE” e “CP” foram removidos em versões mais atuais.

help [COMANDO] Exibe a ajuda geral, ou ajuda para o COMANDO
mklabel Cria uma nova tabela de partição do tipo TIPO-LABEL, a qual pode ser bsd, gpt, loop, mac, msdos, sun, pc98 ou dvh
mkpart PART-TYPE [FS-TYPE] START END Cria uma partição do tipo TIPO-PART com o sistema de arquivos TIPO-FS (opcional) começando em início e terminando em fim (especificados em megabytes por padrão). O TIPO-FS pode ser fat16, fat32, ext2, ext3, HFS, linux- swap, NTFS, reiserfs ou ufs. O TIPO-PART pode ser primary (primária), extended

(estendida) ou logical (unidade lógica)

name NUMBER NAME Renomeia a partição com o nome fornecido. Funciona apenas quando o rótulo de disco (disklabel) da partição for mac, pc98 ou GPT
print [devices|free|list,all|NÚMERO] Exibe a tabela de partições, dispositivos disponíveis, espaço livre, todas as partições encontradas ou uma partição específica
select DEVICE Escolhe o dispositivo para editar
rm NUMBER Apaga a partição NUMERO
set NUMBER FLAG STATE Muda o estado da flag na partição para o estado desejado. As flags suportadas são: boot (Mac, msdos), root (Mac), swap (Mac), raid (msdos), lvm (msdos) ou

lbs (msdos). Os estados possíveis são on ou off.

rescue START END Recupera uma partição perdida próxima do INÍCIO e FIM
*** resize NUMBER START END Redimensiona a partição NUMERO e seu sistema de arquivos
*** cp [FROM-DEVICE] FROM- NUMBER TO-NUMBER Copia o sistema de arquivos para outra partição
unit UNIT Configura a unidade que será usada para mostrar tamanhos de partições e discos, e também para entender a entrada do usuário quando não for fornecido um sufixo de unidade apropriado. A unidade pode ser "s" (setores), "B" (bytes), "kB", "MB", "MiB", "GB", "GiB", "TB", "TiB", "%" (porcentagem do tamanho do dispositivo) , "cyl" (cilindros), "chs" (cilindros, cabeças e setores) ou "compact"

(megabytes para entrada, e formato amigável para saída).

version Exibe o número da versão e informações de direitos autorais do GNU Parted
quit Sair do programa

Mãos a Obra

 

SELECIONAR DISCO E MOSTRAR AS PARTIÇÕES

 

Passo 1: Listar o layout das partições em todos os dispositivos de bloco presente.

 

# parted -l

Passo 2: Selecionar o disco a ser utilizado, usando o comando "select"

 

(parted) select /dev/sdb

 

Passo 3: Exibir na tela as partições usando o comando "print".

 

(parted) print

 

CRIANDO UMA PARTIÇÃO NO DISCO SELECIONADO (/dev/sdb)

 

Passo 1: Primeiramente, vamos criar um label (tabela de partições) do tipo desejado no disco. Como exemplo usaremos gpt.

 

(parted) mklabel gpt

 

Passo 2: Criaremos a partição com o comando “mkpart”.

 

(parted) mkpart primary ext4 0% -1

 

Entendendo cada complemento empregado:

 

Primary -> aqui definimos o tipo de partição, podendo ser primária, estendida ou uma unidade lógica.

Ext4 -> definimos o tipo de sistema de arquivos a usar. Podemos escolher entre fat16, fat32, ext2, ext3, HFS, linux- swap, NTFS, reiserfs ou ufs.

0% -> local onde a partição inicia no disco.

-1 -> local onde a partição terminará.

A partição ainda não foi formatada. Especificar a opção ext4 para o sistema de arquivos apenas configura o ID correto para o sistema de arquivos que será utilizado.

De forma a finalizar a partição, necessitamos sair do parted com o comando “quit”, e então formatar a partição com o utilitário mkfs.ext4

 

(parted) quit

# mkfs.ext4 /dev/sdb1

 

VERIFICANDO E EXCLUINDO PARTIÇÕES COM PARTED NO LINUX

 

Passo 1: Verificar os discos e partições existentes em nosso sistema

(parted) print all

Passo 2: Selecionar o disco que será configurado, que no caso será o disco /dev/sdb: (parted) select /dev/sdb

Passo 3: Consultar a tabela de partições do disco

(parted) print

Passo 4: Excluir a partição do disco selecionado

(parted) rm 1

 

RESGATAR UMA PARTIÇÃO PERDIDA

 

Isso é útil se você excluiu acidentalmente uma partição com o comando rm de parted, por exemplo.

Passo 1: Selecionar o disco que será configurado, que no caso será o disco /dev/sdb e consultar a tabela de partições do disco

(parted) print

Passo 2: Podemos verificar na imagem abaixo que foi excluído a partição 2 do disco selecionado.

Passo 3: Ao utilizar o comando rescue juntamente com o local de início e fim da procura, será exibido um alerta da partição encontrada, solicitando a criação da partição.

Passo 4: Exibindo a lista de partições do disco, verificamos que a partição foi recuperada.

Melhores Práticas

 

Importante sempre lembrar que é necessário criar partições devidamente alinhadas para o melhor desempenho. Desta forma ao utilizar o utilitário parted:

  • Adiciona-se a opção –a seguido de “optimal”;
  • Seta cyl como unidade;
  • Utiliza porcentagens para obter o melhor alinhamento do setor.

Passo 1: parted -a optimal /dev/sdb

Passo 2: unit cyl

Passo 3: criando as partições com as melhores práticas.

Como podemos perceber não foi exibido nenhum alerta, indicativo que realmente foi criado uma partição devidamente alinhada para o melhor desempenho.

Passo 4: Verificando o alinhamento das partições.

Referências

Linux How To Partition a Hard Drive Using the Parted Command
https://www.youtube.com/watch?v=2IoEWy1QNSU

GNU Operating System
https://www.gnu.org/software/parted/

Red Hat Enterprise Linux 3
http://web.mit.edu/rhel-doc/3/rhel-sag-pt_br-3/ch-disk-storage.html

GNU Parted – News
https://savannah.gnu.org/forum/forum.php?forum_id=6356

GNU Parted User Manual
https://www.gnu.org/software/parted/manual/parted.pdf

Planeta Unix
http://www.planetaunix.com.br/2016/08/particionando-discos-com-o-utilitario.html

Viva o Linux
https://www.vivaolinux.com.br/artigo/Exemplos-praticos-de-comandos-com-Parted?pagina=3