bIssue montagem NAS dd image

0

Eu fiz backup do meu NAS HDD usando dd e agora estou tentando montar a imagem para verificá-la. Usando o kpartx, recebo o seguinte erro:

# kpartx -av 2018-02-23_dlink_nas.img 
add map loop0p1 (253:0): 0 1060224 linear 7:0 64
device-mapper: resume ioctl on loop0p2 failed: Invalid argument
create/reload failed on loop0p2
add map loop0p4 (253:1): 0 1024080 linear 7:0 1060288

considerando que a partição nº 2 contém os dados reais. Eu suponho que esse erro é devido à estrutura do sistema de arquivos estranho:

# file 2018-02-23_dlink_nas.img 
2018-02-23_dlink_nas.img: DOS/MBR boot sector; partition 1 : ID=0x82, start-CHS (0x0,1,2), end-CHS (0x41,254,61), startsector 64, 1060224 sectors; partition 2 : ID=0x83, start-CHS (0x81,190,14), end-CHS (0x3ff,254,63), startsector 2084368, 3900393296 sectors; partition 4 : ID=0x83, start-CHS (0x44,41,48), end-CHS (0x85,254,59), startsector 1060288, 1024080 sectors

Para o disco rígido original, posso montá-lo usando o mdadm, já que a partição de dados é uma linux_raid_partition.

Existe uma maneira de ainda montar a imagem? Seria ótimo ter acesso aos meus dados em caso de perda de dados.

Atualização:

(1) O tamanho da imagem é de 1,816,156,778,496 bytes

(2) O tamanho da imagem se ajusta muito bem ao HD original,

# fdisk -l /dev/sdd
Disk /dev/sdd: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6c640956

Device     Boot   Start        End    Sectors   Size Id Type
/dev/sdd1            64    1060287    1060224 517.7M 82 Linux swap / Solaris
/dev/sdd2       2084368 3902477663 3900393296   1.8T 83 Linux
/dev/sdd4       1060288    2084367    1024080   500M 83 Linux

Partition table entries are not in disk order.# fdisk -l /dev/sdd
Disk /dev/sdd: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6c640956

Device     Boot   Start        End    Sectors   Size Id Type
/dev/sdd1            64    1060287    1060224 517.7M 82 Linux swap / Solaris
/dev/sdd2       2084368 3902477663 3900393296   1.8T 83 Linux
/dev/sdd4       1060288    2084367    1024080   500M 83 Linux

Partition table entries are not in disk order.

(3) O HDD é um dos HDDs RAID1, eu posso montá-lo com

mdadm --assemble --run /dev/md0 /dev/sdc2

e, em seguida, montando /dev/md0

    
por Cupora 25.02.2018 / 09:29

1 resposta

0

Eu recriei sua tabela de partições e fiz alguns testes. Este erro você tem:

device-mapper: resume ioctl on loop0p2 failed: Invalid argument
create/reload failed on loop0p2

pode indicar que sua imagem é muito pequena. De fato, sua partição 2 é a última (as partições não estão em ordem) e precisa que a imagem tenha pelo menos 3902477664 (= 2084368 + 3900393296) setores de 512 B, ou seja, pelo menos 1.998.068.563.968 B. Mas…

Image size is 1,816,156,778,496 bytes

É obviamente muito pequeno.

Image size fits pretty well to the original HDD.

Não, isso não acontece. Qualquer um dos seus discos tem 2.000.398.934.016 B, o que é suficiente para conter todas as partições. A imagem adequada do disco rígido todo deve ser do mesmo tamanho.

O disco pode ter sido lido apenas parcialmente por dd ou a imagem foi truncada de alguma forma, ou é de outra forma corrompida.

    
por 25.02.2018 / 11:20

Tags