He creado una dd
imagen de / dev/vda
usando el siguiente comando:
ssh [email protected] "dd if = / dev / vda" | dd de = / home / backup / vda.img
y no puedo montarlo en mi servidor Ubuntu local donde lo transfirí.
Entiendo esto en dmesg | tail
:
[763158.222159] EXT4-fs error (device loop0): ext4_map_blocks:504: inode #8:block 10541546: comm mount: lblock 23018 mapped to illegal pblock (length 1)
[763158.222299] jbd2_journal_bmap: journal block not found at offset 23018 on loop0-8
[763158.222367] JBD2: bad block at offset 23018
[763158.222581] JBD2: recovery failed
[763158.222588] EXT4-fs (loop0): error loading journal
Si trato de verificarlo file
obtengo:
vda.img: datos
¿Alguna idea de que podría ser?
Usando kpartx como Sven sugirió que obtengo:
kpartx -l /home/backup/vda.img
loop eliminado: / dev / loop0
Reinicié el sistema e intenté el comando nuevamente:
kpartx -lv /home/backup/vda.img
ioctl: LOOP_CLR_FD: el dispositivo o recurso ocupado
no puede eliminarse del bucle: / dev / loop0
Y en dmesg | cola consigo
[73.445903] dispositivo-mapper: uevent: versión 1.0.3
[73.446574] dispositivo-mapper: ioctl: 4.22.0-ioctl (2011-10-19) inicializado: [email protected]
dd
es muy poco probable que un disco en vivo resulte en algo útil, esto solo funciona de manera confiable en discos desmontados (o al menos montados en ro).Respuestas:
Es probable que necesite montar particiones dentro del archivo de imagen. Esto se puede hacer con
kpartx
.enumerará particiones dentro del archivo y
los agregará a
/dev/mapper/loopXpY
(dondeX
yY
varía), desde donde puede montarlosmount
.Ver
man kpartx
para más información.fuente
He logrado solucionar el problema de la siguiente manera:
Verifiqué el tamaño de la partición que deseaba copiar y luego creé un archivo local con ese tamaño en el servidor de respaldo y creé la partición dentro de él usando los siguientes comandos:
Luego usé dd para copiar los datos del servidor a la partición de respaldo.
Revisé todo y todo parece estar bien.
fuente