Faça o backup do MBR de um disco rígido e da primeira partição (reduzida) para um único arquivo de imagem

2

Apesar de muita pesquisa no Google, não consegui encontrar uma resposta para o meu problema.

Sou um administrador de sistemas Linux e quero fazer backup de uma instalação do Windows XP (mas pode ser qualquer outro sistema operacional) localizado na primeira partição de um disco rígido de 160 GB (que reduzi para seu tamanho mínimo, cerca de 4,8 GB) e o MBR, no mesmo arquivo. O objetivo é ter uma única imagem de disco que eu possa usar para sobrescrever um novo disco rígido (ex. Dd se = / my / file.img de / dev / sda) e usar o gparted para aumentar a partição para o novo disco tamanho depois, tendo assim uma imagem tão fácil de usar quanto as imagens de disco híbridas Debian ou Ubuntu para seus sistemas live (que você pode escrever diretamente para pendrives com dd, mas eu só quero usá-los em discos rígidos simples). / p>

Eu já sei como fazer backup / restaurar o MBR ou uma única partição com o dd, mas agora gostaria de fazer backup de ambos em um único arquivo.

Eu não tentei nada ainda, mas pensei em dois métodos:

  1. Concatene (com cat, por exemplo) o MBR e os arquivos de imagem da partição em um único arquivo de imagem, mas não tenho certeza se não há nada entre eles no disco original.

  2. Use a opção "count" do dd para fazer backup do disco rígido até o final da primeira partição, mas não sei como calcular o tamanho correto para finalizar a cópia. Talvez o número de bytes copiados ao fazer backup da partição (que é gerada quando ela é concluída) com 512 bytes adicionados para o MBR, mas, novamente, não conheço estruturas de dados de discos rígidos com profundidade suficiente para ter certeza de que não há dados entre eles que eu deveria adicionar ao total.

Fazer backup de todo o disco para um arquivo esparso ou compactado não é uma opção, pois gostaria de poder usar essa imagem em um disco menor que o original (mas maior do que a partição reduzida, é claro) .

Qualquer conselho seria apreciado, seja uma confirmação de que o primeiro método funcionaria (ou não), uma maneira de calcular o número correto para o segundo método ou um método completamente diferente para atingir esse objetivo, a única limitação sendo que, como usuário do Linux, eu preferiria um método usando apenas o software básico disponível na maioria das distribuições Linux, como dd ou cat.

    
por MoonSweep 25.11.2013 / 02:07

1 resposta

2

Sua opção 2 deve funcionar. Por exemplo, se fdisk ou parted mostrar que a partição do Windows termina no setor 9.375.000, você poderia fazer:

dd if=/dev/sda of=/path/to/winxp.img bs=512 count=9375001

(Observe a adição de 1 ao valor count , pois os setores são numerados começando com 0.) Para copiar essa imagem para outro disco, faça o inverso, e você pode omitir o count e bs options (embora a configuração de um valor bs mais alto possa melhorar o desempenho; meu exemplo o define como 4096, que é o tamanho do setor físico em novos discos do Advanced Format):

dd if=/path/to/winxp.img of=/dev/sdb bs=4096

A cópia terminará no final do arquivo. Enquanto o disco tiver pelo menos 9.375.001 setores, tudo deve funcionar. Em um computador baseado em BIOS, o carregador de boot reside no registro mestre de inicialização (MBR; o primeiro setor do disco). Às vezes, um código adicional (como o GRUB ou alguns tipos de software de criptografia de disco) vai para os setores intermediários entre o MBR e o início da primeira partição. Todos esses setores existirão no arquivo de backup. Embora seja teoricamente possível que algum software armazene dados fora das partições no final do disco, essa prática é incomum. Na verdade, eu não sei de nada que faça isso, pelo menos não em um computador com BIOS / MBR. (O mais novo sistema de particionamento GUID Partition Table, ou GPT, armazena um backup da tabela de partição no final do disco. Assim, se você quiser fazer backup de um disco GPT, precisará fazer algo mais complexo ou executar uma operação de reparo da tabela de partições depois de restaurar o backup.)

Observe que tudo isso ignora o fato de que as instalações do Windows tendem a ser altamente específicas da máquina. Se você mover a instalação para um novo computador, os drivers provavelmente não serão compatíveis e, na melhor das hipóteses, você precisará reiniciar meia dúzia ou uma dúzia de vezes enquanto o Windows atualiza todos eles. Na pior das hipóteses, esse processo pode falhar. Há também problemas com o número de série do Windows.

    
por 25.11.2013 / 19:15