
O que estou procurando é uma maneira de clonar discos rígidos (principalmente partições do Windows) enquanto permaneço dentro do sistema operacional Ubuntu. Não quero criar uma partição no disco rígido para inicializar e não quero usar um CD de inicialização. A única coisa que consigo pensar que está próxima é a versão de 32 bits do ghost que pode ser executada na área de trabalho do Windows.
Não precisa ser o clonezilla, mas é o único software de clonagem de Linux que usei e quase o usei exclusivamente desde que o descobri. Se não houver como usar o clonezilla na área de trabalho, aceitarei um programa alternativo. O principal é que ele clona drives e roda dentro do Ubuntu.
Obrigado pelo seu tempo antecipadamente
Responder1
Clonezilla usa dd
nos bastidores.
Sobre discos e partições
Um disco inteiro é um dispositivo como /dev/sda
. Este é o primeiro disco, o segundo disco é /dev/sdb
, o terceiro /dev/sdc
, etc. Os discos mais antigos conectados através de um cabo IDE são nomeados como hda
, hdb
, ... Um disco pode ter múltiplas partições como /dev/sda1
. A segunda partição no disco /dev/sda
é /dev/sda2
e assim por diante. Uma imagem (cópia literal de bytes) pode ser feita tanto de uma partição quanto de um disco. Observe que os primeiros 512 bytes de um disco contêm o MBR (Master Boot Record).
Uma partição não deve ser montada ao criar ou restaurar imagens, caso contrário poderá ocorrer perda de dados ao ler a partir dela (criar uma imagem) ou comportamento inesperado e corrupção de dados se você estiver gravando nela (restaurando a partir de uma imagem).
Nos exemplos abaixo, /dev/sda1
é a partição a partir da qual uma imagem deve ser criada.
Partições e dispositivos de disco /dev
só podem ser gravados pelo superusuário (root) e pelos usuários do disk
grupo. Eu não gosto de executar tudo como root, então por segurança (caso você tenha cometido um erro de digitação, por exemplo), mudo o grupo temporariamente para mim mesmo, para poder ler e escrever nele:
sudo chgrp my_user_name /dev/sda1
Se você pular o comando acima, deverá prefixar os dd
comandos abaixo com sudo
.
Fundamentos
O comando básico para criar uma imagem de uma partição é:
dd if=/dev/sda1 of=disk.img
if
significa "arquivo de entrada", of
significa "arquivo de saída". Tudo no Linux é um arquivo, até mesmo dispositivos.
Para restaurar essa imagem, execute:
dd if=disk.img of=/dev/sda1
A ordem não importa, você dd of=/dev/sda1 if=disk.img
também poderia ter escrito o texto acima.
Imagens compactadas
Como as partições geralmente são grandes, é recomendável compactar os dados antes de gravá-los na imagem:
dd if=/dev/sda1 | gzip > disk.img.gz
Isso funciona porque se of
for omitido, a saída será gravada na "saída padrão", que é o canal para o programa de compactação gzip
. A saída disso é gravada em disk.img
.
Para restaurar essa imagem compactada, execute:
gunzip -c disk.img.gz | dd of=/dev/sda1
Aqui gunzip
está o comando reverso do gzip. -c
faz com que a saída seja gravada na saída padrão, que é o canal para o dd
comando. Como if
é omitido em dd
, a entrada é lida da "entrada padrão", que é a saída de gunzip
.
Lendo uma imagem sem restaurá-la
Imagens não compactadas podem ser montadas para que você possa lê-las. Caso você tenha compactado suas imagens de partição, descompacte-as primeiro ( disk.img.gz
será removido, disk.img
será criado. Certifique-se de ter espaço suficiente!):
gunzip disk.img.gz
Alternativamente, descompacte uma imagem sem tocar na própria imagem:
gunzip -c disk.img.gz > disk.img
Agora crie um diretório no qual o disco possa ser montado e monte a imagem somente leitura ( ro
):
sudo mkdir /mnt/wind
sudo mount -o ro disk.img /mnt/wind
Agora você pode visualizar seus arquivos no formato /mnt/wind
. Quando terminar, desmonte-o e remova o ponto de montagem obsoleto:
sudo umount /mnt/wind
sudo rmdir /mnt/wind
Menos tamanho, mais uso de CPU, maior duração de backup e restauração
Se o tempo não for um problema e você não tiver muito espaço de armazenamento, poderá usar o bzip2
formato de compactação. Simplesmente substitua gzip
por bzip2
acima. É comum usar a .bz2
extensão para arquivos compactados com bzip2, então faça-o.
Responder2
Você quer clonar um disco rígido para outro? Existem várias maneiras de fazer isso. Eu geralmente prefiro o comando dd. Observe que para usar este comando, você precisaria de acesso sudo.
Para clonar o disco rígido 1 no disco rígido 2. Observe que o disco rígido 2 deve ser maior que o disco rígido 1. Se o disco rígido de origem for sda e o disco rígido de destino for sdb, você poderá copiar todo o conteúdo de sda para sdb usando o seguinte comando.
dd if=/dev/sda of=/dev/sdb
Para clonar todo o disco rígido 1 em uma imagem, use o seguinte comando. Observe que ~/disk1.img deve residir em um disco diferente
dd if=/dev/sda of=~/disk1.img
Para clonar uma partição única em uma imagem, use o seguinte comando. Observe que o arquivo de imagem não deve residir na mesma partição.
dd if=/dev/sda1 of=~/drive1.img
Para restaurar a imagem, use o seguinte comando.
dd if=drive1.img of=/dev/sda1 - For Partition dd if=disk1.img of=/dev/sda - For whole hard disk
Você também pode economizar espaço compactando o arquivo de imagem.
gzip disk1.img - This will generate disk1.img.gz bzip2 disk1.img - This will generate disk1.img.bz2