
Estoy en un enigma. Necesito extraer datos de una imagen de respaldo que creé anteriormente. Pensé que sabía lo suficiente sobre LVM para arreglármelas... al menos hasta ahora.
Parece que mi error fue que hice una copia de seguridad de un volumen de instantánea LVM en lugar de todo el grupo de volúmenes o la partición del disco. La mayoría de los artículos que he leído implican que has realizado una copia de seguridad de todo el disco.
Aquí está mi diseño LVM:
xvda 202:0 0 10G 0 disk
└─xvda1 202:1 0 10G 0 part
├─lvm1-root 254:2 0 8.1G 0 lvm /
└─lvm1-swap 254:3 0 956M 0 lvm [SWAP]
Aquí está mi comando de respaldo:
lvcreate -L800M -s -n rootsnapshot /dev/lvm1/root
dd if=/dev/lvm1/rootsnapshot conv=sync,noerror bs=128K status=progress of=/path/to/snapshot.dd
Monté el archivo DD como /dev/loop0 en otra máquina.
Esto es lo que obtengo:
# fdisk -l
Disk /dev/loop0: 8.1 GiB, 8657043456 bytes, 16908288 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
# lvmdiskscan
/dev/loop0 [ 8.06 GiB]
/dev/sda1 [ <7.00 GiB]
/dev/sda5 [ 1022.00 MiB]
0 disks
3 partitions
0 LVM physical volume whole disks
0 LVM physical volumes
# vgscan -v
Reading all physical volumes. This may take a while...
No volume groups found.
¿Alguna idea de cómo podría montar esta instantánea para recuperar datos de ella?
Respuesta1
Lo averigué. Es súper sencillo.
En primer lugar, mi problema fue que mi último archivo de copia de seguridad DD estaba completamente lleno de 0x00 bytes...
Una vez que tomé una copia de seguridad anterior que contenía datos reales, todo salió muy bien.
losetup /dev/loop0 /path/to/snapshot.dd
mount -f ext4 /dev/loop0 /mnt/tmp
¡Funciona perfectamente!