Como copiar informações de partioning com dd?

2

Estou tentando recuperar informações de particionamento usando o TestDisk . Para experimentar Copiei todos os dados do disco rígido original para outro disco físico usando dd da seguinte forma:

$ dd if=/dev/sda of=/dev/sdb bs=4096 conv=notrunc,noerror,sync

A execução do TestDisk na unidade original aparece assim:

Disc /dev/sda - 500 GB / 465 GiB - CHS 969021 16 63

Warning: the current number of heads per cylinder is 16
but the correct value may be 255
You can use the Geometry menu to change this value.
It's something to try if
- some partitions are not found by TestDisk
- or the partition table can not be written because partitions overlaps.

E depois de continuar sem alterar nada "Análises rápidas", saídas:

Disk /dev/sda - 500 GB / 465 GiB - CHS 969021 16 63
     Partition             Start        End    Size in sectors
 * HPFS - NTFS               2   0 33    205   3 19     204800 [System-reserviert]
 P HPFS - NTFS             205   3 20 203174   9 41  204593152 [W764]
 P Linux                203176  10 11 305359   3 51  103000064
 L Linux                313112   6  7 373707   2 50   61079552
   HPFS - NTFS          373707   2 51 969022  15 47  600078336 [DATA]
   HPFS - NTFS          373707   2 58 969020  15 63  600076329

A execução do TestDisk "Análise rápida" no test drive aparece assim:

Disk /dev/sdb - 500 GB / 465 GiB - CHS 969021 255 63
     Partition             Start        End    Size in sectors
   HPFS - NTFS               0  32 33     12 223 19     204800 [System-reserviert]
   HPFS - NTFS              12 223 20  12748  53 41  204593152 [W764]
   Linux                 12748  86 11  19159 202 51  103000064
   Linux                 19646  68  7  23448  74 50   61079552
   HPFS - NTFS           23448  74 51  60801 112 47  600078336 [DATA]

Os discos não são da mesma marca. O test drive é um SSD. Parece que as informações de particionamento não são copiadas para o test drive. Por quê?

A saída de sfdisk é a mesma para ambos os discos. Aqui para /dev/sda :

$ sudo sfdisk -d /dev/sda
# partition table of /dev/sda
unit: sectors

/dev/sda1 : start=376696782, size=600076386, Id= 7, bootable
/dev/sda2 : start=        0, size=        0, Id= 0, bootable
/dev/sda3 : start=        0, size=        0, Id= 0, bootable
/dev/sda4 : start=        0, size=        0, Id= 0, bootable

Aqui está a saída de parted . O modelo do disco é diferente - os outros dados são os mesmos:

$ sudo parted /dev/sda print
Model: Disk Name (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End    Size    Type     File systems  Flags
 1      193GB  500GB  307GB  primary  ntfs          boot

A geometria (como visto pelo kernel) para o disco S-ATA ...

$ sudo sfdisk -g /dev/sda
/dev/sda: 969021 cyclinders, 16 heads, 63 sectors/track

... e para o disco SSD

$ sudo sfdisk -g /dev/sdb
/dev/sdb: 60801 cyclinders, 255 heads, 63 sectors/track
    
por JJD 06.05.2014 / 12:15

1 resposta

1

Finalmente, consegui reproduzir a saída do TestDisk na segunda unidade. Eu simplesmente mudei as configurações de geometria para as da unidade original. Eu fiz o seguinte:

Pesquise as configurações de geometria da unidade original:

$ sudo sfdisk -g /dev/sda
/dev/sda: 969021 cyclinders, 16 heads, 63 sectors/track

Abra o TestDisk, selecione o "disco de teste" e aplique as configurações acima no menu Geometry . Não tenha medo - o cenário não é permanente.

Em seguida, escolha Quick analyze e o resultado deve mostrar o mesmo que foi feito para a unidade original. Desta vez, reconheceu as partições desejadas do Linux, como a unidade original. Desta vez, eu poderia escrever a tabela de partições, pois ela só aplicava o "disco de teste".

Ler mais, muito útil: Como montar uma partição inicial criptografada?

    
por 11.05.2014 / 00:12