Como posso copiar rapidamente um esquema de partição GPT de um disco rígido para outro?

74

Em uma tabela de partição não GPT, posso fazer

sfdisk -d /dev/sda | sfdisk /dev/sdb .

Mas sfdisk não suporta tabelas de partições GPT. O que posso usar em vez disso?

Estou procurando uma solução de um ou dois comandos, não apenas usando o GNU parted para produzir os tamanhos das partições e, em seguida, tornando-os manualmente novamente.

    
por Kris Harper 20.08.2011 / 02:20

5 respostas

108

Instale o gdisk que está disponível nos repositórios do Ubuntu Universe.

Em seguida, use o comando sgdisk ( página de manual aqui ) para replicar o tabela de partições:

sgdisk /dev/sdX -R /dev/sdY 
sgdisk -G /dev/sdY

O primeiro comando copia a tabela de partições de sdX para sdY (tenha cuidado para não misturá-las). O segundo comando randomizes o GUID no disco e todas as partições. Isso só é necessário se os discos forem usados na mesma máquina, caso contrário, é desnecessário.

    
por Kris Harper 20.08.2011 / 03:34
27

Eu tentei e não funcionou para mim. A solução que encontrei é:

sgdisk --backup=table /dev/sda
sgdisk --load-backup=table /dev/sdb
sgdisk -G /dev/sdb
    
por Serafin Rusu 17.08.2013 / 22:34
8
dd if=/dev/sda of=GPT_TABLE bs=1 count=A
dd if=GPT_TABLE of=/dev/sdb bs=1 count=A
partprobe /dev/sdb

onde A é:

A=(128*B)+1024
B=parted -ms /dev/sda print |tail -1|cut -b1
    
por Petroff 05.01.2014 / 11:34
2

Eu apenas tentei a replicação com o sgdisk e funciona muito bem - você só precisa seguir as regras de sintaxe readline:

   sgdisk --replicate=/dev/target /dev/source

ou

   sgdisk -R/dev/target /dev/source

e tudo funciona.

    
por al3xxx 05.11.2013 / 19:53
-2

A resposta mais fácil para isso é:

sudo sfdisk -d /dev/sda | sudo  sfdisk /dev/sdb --force

para copiar a configuração 'boa' da tabela de partições de A para a unidade de substituição B (que é a nova unidade).

    
por Tony Doyle 18.08.2016 / 17:04