Clonando HD no Linux

A manutenção de um determinado sistema pode-se tornar trabalhosa em algumas situações. Um fator crítico é quando o espaço em disco do sistema chega a sua capacidade máxima, como por exemplo, um servidor de banco de dados. A clonagem pode ser uma das soluções. A distribuição utilizada neste artigo foi o Knoppix 5.1. Outras distribuições podem ser utilizadas.

[ Hits: 40.396 ]

Por: Fabricio Eduardo Loose em 19/07/2007


Preparando o ambiente



A utilização de uma distribuição LiveCD é importante, pois os discos (origem e destino) não devem estar em uso.

Após a habilitação na BIOS do boot pelo CD-ROM, inicializar o computador com o LiveCD em textmode.

Um detalhe importante, o disco destino deve ser de maior capacidade, caso contrário os dados podem não ser copiados. O tipo de partição (ext3, ext2, fat32, etc) no HD destino deve ser do mesmo tipo do HD de origem.

Pode-se utilizar o comando fdisk ou cfdisk para edição do HD destino.

A clonagem é feita utilizado o comando dd (consulte "man dd" para mais detalhes). Exemplo:

dd if=/dev/<device1> of=/dev/<device2>

Onde device1 é o HD ou partição origem, e device2 é o HD ou partição destino.

Manutenção pós-cópia

Após a finalização da cópia nota-se que o HD ou partição destino passa a ter o mesmo tamanho do HD o partição origem. Por exemplo: um HD origem de 2GB, HD destino de 10GB, o HD destino terá apenas a capacidade de 2GB, embora ele seja de 10GB. Isso ocorre devido a cópia do bloco de dados do HD origem, que tem apenas 2GB. Portanto teremos 8GB inutilizáveis.

Para tornar o espaço inutilizado do HD destino utilizável, pode-se utilizar o comando e2fsck. Por exemplo:

e2fsck -f /dev/<hd_destino>

Que serve para checagem da nova estrutura de dados.

Em seguida, para realizar o redimensionamento, utilizamos o comando resize2fs. Por exemplo:

resize2f /dev/<hd_destino>

Pode-se utilizar a opção -f para forçar o redimensionamento. Caso um tamanho em K (Kbytes), M (MegaBytes) ou G (GigaBytes) não seja especificado, o tamanho máximo do HD ou partição é utilizado como default.

Finalizando

Após a clonagem e manutenção terem sido realizadas, monte o dispositivo e faça as devidas modificações nos arquivos /boot/grub/menu.lst (caso o boot loader seja o GRUB) ou /etc/lilo.conf (caso o boot loader seja o lilo) e em /etc/fstab para que o sistema possa ser inicializado no novo dispositivo.

Referências

Dicas-L. Gerando imagem do seu HD. http://www.dicas-l.com.br/dicas-l/20060213.php

MECARTY, Bill By. Learning Debian GNU/Linux. O'Reilly. 1st Edition September, 1999.

FIGGINS Stephen, LOVE Robert, ROBBINS Arnold, SIEVER Ellen, WEBER Aaron. Linux in a Nutshell. O'Reilly. 5th Edition. July 2005.

   

Páginas do artigo
   1. Preparando o ambiente
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Embelezando o Xubuntu 12.04

Compartilhando diretórios em rede com o NFS

Controle de versão usando Git integrado ao Redmine

OpenVPN - Servidor Ubuntu 10.04 LTS e Clientes Windows

ASP.NET no Linux

  
Comentários
[1] Comentário enviado por cefas em 19/07/2007 - 08:26h

Utilizei esse procedimento algumas vezes e é super tranquilo. Depois, é só utilizar o HD em outro hardware idêntico e ok.

Contudo, fiz esse procedimento do meu sda para o sdb, discos idênticos, só por backup. Teria como eu montar o sdb para verificar, já que o mesmo foi clonado de um sda?

No mais, é um artigo simples e eficiente. Nota 10!

[2] Comentário enviado por cefas em 19/07/2007 - 08:28h

Dúvida: o destino eu sei que não está em uso, mas a origem também? Acho que farei um teste para tirar a dúvida.

Valeu!

[3] Comentário enviado por fabricioloose em 19/07/2007 - 08:57h

Embora tenha-se clonado o dispositivo sda em sdb nada impede a verificação dos dados em sdb. Basta montar o dispositivo e verificar os dados:
mount /dev/sdb[1,2,....] /mnt/sdb

Pode-se ainda utilizar o comando du dentro do diretorio /mnt/sdb depois de montado para verificar o tamanho dos dados.

Um abraço.

[4] Comentário enviado por evilrick em 19/07/2007 - 10:49h

Parabéns pelo artigo: prático, simples e rápido.
Já tá nos favoritos.

[5] Comentário enviado por f_Candido em 19/07/2007 - 22:49h

Muito legal mesmo. Vivendo e aprendendo...

[6] Comentário enviado por -Kaizoku- em 20/07/2007 - 02:13h

Põ muito massa, eu tava querendo aprender a fazer isso a tempos :] vlw msm...

Só tenho uma dúvida, se eu quiser clonar o HD inteiro, eu teri qu fazer isso partição por partição ?!

flwzz

[7] Comentário enviado por adrianoturbo em 20/07/2007 - 08:37h

Excelente post amigão abordando de forma simples um assunto complexo principalmente quando está em jogo arquivos.

[8] Comentário enviado por fabricioloose em 20/07/2007 - 09:24h

pode fazer direto dd if=/dev/origem of=/dev/destino

[9] Comentário enviado por kamikze em 20/07/2007 - 15:00h

ótima dica cara

[10] Comentário enviado por vinyboss em 29/06/2011 - 19:26h

aew pessoal sou iniciante em linux e estou precisando usar a clonagem mas naum ta dando certo

to entrando como root e digitando dd if=/dev/sdb of=/dev/sda ai dou enter e naum acontece nada...

o HD sdb é o HD que eu quero copiar para o outro é isso mesmo

eu usei o comando fdisk -l para descobrir o nome dos HDs

to fazendo certo???

[11] Comentário enviado por rweu em 05/11/2011 - 12:16h

Cara o comando dd, não mostra o que está ocorrendo, a única indicação é o led do hd "polando", ao final da clonagem, aê sim, vai dar uma mensagem de completamento.

Aproveito também para parabenizar o autor da matéria, ela me ajudou em muito, pois eu só tinha dado o comando dd e não o resize, e com isso eu tinha outra partição com espaço não reconhecido.

Valeu!!

[12] Comentário enviado por embura em 11/05/2012 - 17:35h

Eu usei mas, demoro muito, eu desistir de esperar e usei o G4U.

[13] Comentário enviado por Marolis em 01/09/2016 - 09:10h

Com comando cat também funcionaria?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts