Montando uma partição a partir de um arquivo de imagem DD bruto de um disco físico

11

Eu tenho uma imagem DD tirada da imagem HDD bruta (/ dev / sdb). Este arquivo de imagem contém um sistema de arquivos XFS que eu preciso montar. É muito grande para restaurar em discos (arquivo de 2,6 TB img), então eu gostaria de montá-lo usando o loopback.

No entanto, a tabela de partição se torna um problema. Tentei determinar o deslocamento das partições usando parted e fdisk -lu. Parted retorna "rótulo de disco não reconhecido", fdisk -lu mostra uma tabela de partição em branco.

Como você recomendaria encontrar o início da partição para que eu possa montá-la com o loop -o

coderego
fonte
O sfidsk não me mostra a tabela de partições. "Nenhuma partição encontrada" usei head -c 15000 sdb.img para ver o que estava vendo. Pesquisei e vi que são metadados de grupos de volumes LVM. Contém itens como dev_size, pe_start, pe_count. etc
coderego
como você está usando essas ferramentas?
18711 Keith
Estou usando as ferramentas através do bash com o sudo.
Codecego

Respostas:

6

O kpartxcomando fará todo o trabalho para você detectar onde as partições existem e configurar dispositivos de loop com as compensações apropriadas.

# kpartx -l /dev/ganderData/example-sysdisk
ganderData-example--sysdisk-1 : 0 497952 /dev/ganderData/example-sysdisk 63
ganderData-example--sysdisk-2 : 0 62412525 /dev/ganderData/example-sysdisk 498015

# kpartx -a /dev/ganderData/example-sysdisk
# mount /dev/mapper/ganderData-example--sysdisk-2 /mnt/tmp
MikeyB
fonte
3

Veja se o testdisk pode encontrar os rótulos das suas partições. Você pode tentar e ver se kpartxpode encontrá-lo e ativá-lo primeiro:

# kpartx -a -v image

Lembre-se também de tentar essas duas coisas em uma cópia da imagem. Você não quer destruir sua imagem de backup com testes.

coredump
fonte
1

Você pode usar sfdiskpara despejar a tabela de partição da imagem. Muito bem, qualquer uma das *fdiskvariantes fará isso, mas algumas reclamam mais do que outras. Isso permitirá que você calcule o deslocamento da partição.

BillThor
fonte
0

Corra file - </dev/sdbpara ver o que você realmente tem no disco, pois não parece ser uma imagem de um disco com um sistema de partição de PC.

Dado o seu comentário, você provavelmente tem um volume físico LVM. Então, primeiro associe um dispositivo de bloco a ele losetup, depois registre o dispositivo de loop como um volume físico e prossiga a partir daí.

losetup -fv /path/to/image/file
pvs  # will show /dev/loop99 (for some value of 99) as a physical volume
vgs  # will show the VG(s) on /dev/loop99
lvs  # will show the LV(s) on the VG(s) on /dev/loop99
mount /dev/mapper/groupname-volumename /mnt
…
vgchange -an groupname
losetup -u /dev/loop99
Gilles 'SO- parar de ser mau'
fonte