Até onde eu sei, o driver de kernel Linux LVM só pode usar dispositivos de bloco como volumes físicos, e eu não estou ciente de nenhuma ferramenta de usuário para acessar os volumes de LVM convenientemente. Então você precisa fazer com que o volume físico apareça como um dispositivo de loop . (Eu suponho que você esteja executando o Linux; caso contrário, execute-o em uma máquina virtual, se necessário.)
Primeiro, determine o deslocamento da partição. Você pode usar fdisk
para isso:
fdisk -lu /path/to/disk.image
Observe o deslocamento da partição desejada (na coluna Start
), por exemplo, 123456. A unidade é de 512 bytes. Agora crie um dispositivo de loop a partir da imagem, começando no deslocamento desejado.
losetup -fv -o $((123456*512)) /path/to/disk.image
A partição estará disponível como o dispositivo de bloco /dev/loop0
(o número pode ser diferente se você já tiver dispositivos de loop ativos).
Há um patch no kernel do Linux para acessar partições em um dispositivo de loop automaticamente. O Debian aplica em seu kernel padrão; a maioria das outras distribuições não. Se você tiver esse patch, poderá executar losetup -fv /path/to/disk.image
e acessar as partições no dispositivo, por exemplo, /dev/loop0p1
e assim por diante. Talvez seja necessário passar um argumento explícito ao driver para ativar esse recurso: rmmod -r loop && modprobe loop max_part=63
.
Agora, execute pvscan
. Isso deve pegar /dev/loop0
ou /dev/loop0p1
ou qualquer que seja o nome do dispositivo como um volume físico. Você pode ativar o (s) grupo (s) de volume com vgchange -ay
e acessar os volumes lógicos em /dev/mapper
.