dd image muito grande para recuperar

3

Eu fiz uma imagem com dd

sudo dd if=/dev/sda of=/path_to_external_drive/backup.img

Agora eu queria recuperar o sistema depois que a montagem de todas as partições ocorreu sem problemas. Quando eu faço

sudo dd if=backup.img of=/dev/sda

Eu não recebo nenhuma mensagem de erro até que eu tente inicializar o sistema.

Eu recebo a seguinte mensagem de erro de sudo fdisk -l porque eu queria ver porque o BIOS não encontrou nenhuma partição.

A partição 1 não inicia no limite do setor físico

Então eu tentei o Disk Image Writer do meu live stick, mas ele diz que a imagem é de 41 kB muito grande.

Como isso pode acontecer e como posso corrigi-lo? Existe outra maneira, além de comprar um novo SSD, para restaurar o sistema?

fdisk -l backup.img:

fdisk -l / dev / sda:

GPT PMBR size mismatch (976773247 != 976773167) will be corrected by w(rite).

Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x635f93a2

Device     Boot Start       End   Sectors   Size Id Type
/dev/sda1           1 976773247 976773247 465.8G ee GPT

Partition 1 does not start on physical sector boundary.

gdisk -l / dev / sda:

GPT fdisk (gdisk) version 1.0.1

Warning! Disk size is smaller than the main header indicates! Loading
secondary header from the last sector of the disk! You should use 'v' to
verify disk integrity, and perhaps options on the experts' menu to repair
the disk.
Caution: invalid backup GPT header, but valid main header; regenerating
backup header from main header.

Warning! One or more CRCs don't match. You should repair the disk!

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: damaged

****************************************************************************
Caution: Found protective or hybrid MBR and corrupt GPT. Using GPT, but disk
verification and recovery are STRONGLY recommended.
****************************************************************************

Disk /dev/sda: 976773168 sectors, 465.8 GiB  
Logical sector size: 512 bytes  
Disk identifier (GUID): 8DC2A4AA-C369-4ED8-B876-DCE0418A1BD0  
Partition table holds up to 128 entries  
First usable sector is 34, last usable sector is 976773214  
Partitions will be aligned on 2048-sector boundaries

Total free space is 4157 sectors (2.0 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name  
   1            2048          923647   450.0 MiB   2700  Basic data partition  
   2          923648         1128447   100.0 MiB   EF00  EFI system partition  
   3         1128448         1161215   16.0 MiB    0C01  Microsoft reserved ...  
   4         1161216       669571071   318.7 GiB   0700  Basic data partition  
   5       669571072       960290815   138.6 GiB   8300  
   6       960290816       976771071   7.9 GiB     8200  
    
por Sven Bamberger 30.04.2017 / 10:13

1 resposta

2

Seu arquivo de imagem é 40KB maior que o disco (setores 976773248 - 976773168). Não é possível trabalhar com dd a imagem inteira no disco. Eu acho que seu comando dd estava mostrando alguns avisos como "sem espaço sobrando" ou algo assim.

Mas você tem sorte. A última (6ª) partição é apenas uma partição swap. Você pode usar gdisk and mkswap para redimensionar a última partição e corrigir a tabela de partição:

$ gdisk / dev / sda

  1. remover a última partição
  2. conserte a tabela de partições gpt (deve ser feito automaticamente)
  3. recriar a última partição (será um pouco menor que antes)

Em seguida, formate a nova partição de troca:

$ mkswap /dev/sda6

Notas relacionadas ao uso interativo do gdisk :

Eu não posso realmente prever o que gdisk /dev/sda irá mostrar para você. Digite "h" para ajuda. Digite "d" e, em seguida, "6" para remover a última partição. "n" e "6" para recriar a última partição. Saia e escreva suas alterações com "w". O gdisk não escreve nada a menos que você saia com "w". Se não tiver certeza, você sempre pode sair / cancelar por "q" ou "ctrl-c".

    
por 30.04.2017 / 11:53