
DR: Existe uma maneira de clonar os metadados de um disco para outro disco?
Estou tentando copiar todos os dados (incluindo metadados) de um disco de 4TiB para outro disco de 2TiB. Verifiquei que o disco de 4TiB contém apenas dados de 1TiB e seu sistema de arquivos é ext4
.
Minha abordagem anterior foi a seguinte:
- Redimensione o sistema de arquivos no disco de origem:
resize2fs -M <source disk mountpath>
- Calcule o número de blocos de 16 MiB necessários para o sistema de arquivos reduzido.
- Use dd para copiar todos os dados (incluindo metadados):
dd bs=16M if=<src> of=<dst> count=<# block calculated in step2
.
Este método funciona bem quando a quantidade de dados é relativamente pequena. Mas quando o tamanho dos dados é grande, por exemplo 1TiB
, ambos resize2fs
podem dd
demorar muito.
Estou pensando em usar rsync
em vez de dd
, então não há necessidade de redimensionar o sistema de arquivos original e o plus rsync
parece ser mais rápido que dd
. Mas um problema é que rsync
não copia os metadados do disco, como uuid, rótulo, etc.
Gostaria que o novo disco tivesse exatamente os mesmos metadados do original, para que eu possa usar diretamente o novo disco para substituir o original sem modificar nada no servidor. Existe uma maneira de clonar os metadados do disco também?
Responder1
Sim, existe uma maneira de clonar a unidade com metadados: use dd conforme você abordou originalmente. Embora não esteja claro por que você precisa fazer isso em pedaços de 16 MB.
Gravar grandes blocos de dados leva tempo; não há como evitar isso, a menos que você obtenha unidades mais rápidas.