Como criar dispositivos de bloco virtual a partir do arquivo? [duplicado]

1
  • Vamos ter uma imagem bruta descompactada de unidade de disco desconhecida (criada por exemplo por dd if=/dev/sda of=image ) em um único arquivo.
  • Se soubéssemos o layout do disco, poderíamos montar partições específicas do arquivo como dispositivos de loop, ignorando alguns deslocamentos.
  • Vamos supor que não sabemos o layout. Podemos de alguma forma "montar" a unidade de disco inteira image , processo que criaria dispositivos de bloco virtual de acordo com o layout do disco? Por exemplo, ter duas partições no image resultaria na criação de três dispositivos ( /dev/sdx , /dev/sdx1 , /dev/sdx2 ). Poderíamos então montar esses dispositivos como de costume.
por sharpener 30.01.2016 / 16:04

1 resposta

1

Depois de mais algumas pesquisas, existem pelo menos dois métodos para testar:

  1. De acordo com este post, kpartx é a ferramenta aplicável.
    • Infelizmente, não funcionou no Arch Linux para mim
    • É do AUR: yaourt multipath-tools-git , parece não ser bem suportado / finalizado e acabou com erros como:

      device-mapper: reload ioctl on loop0p1 failed: No such device

    • Pode ser usado pelo menos para listar as partições incorporadas: kpartx -l image
    • EDITAR: De acordo com esta post, parece estar obsoleta e o método preferido é o seguinte.
  2. De acordo com this post , losetup pode ser usado.
    • Em primeiro lugar, não funcionou: losetup /dev/loop0 image (falta dos dispositivos para partições específicas).
    • A tentativa de usar novamente a opção -P adicional fez o trabalho: losetup -d /dev/loop0 , losetup -P /dev/loop0 image e /dev/loop0pX dispositivos foram criados.
    • Esses dispositivos são montados conforme o esperado, como mount /dev/loop0p3 /mnt/x -t ntfs
por 30.01.2016 / 17:51