This helped me a great deal. Thanks. I just have a few questions...
1) is it best to unmount the /mnt/lvfoo/ before or after kpartx -d? because you have it in your procedure list both before and after kpartx -d. 2) is it possible to explore this dump file by either mounting it or some other method? 3) what is the best procedure to replace this dump file in case of a disk failure? i.e. just install xen and use virt-install? 4) is this the best possible method of backing up a domU?
Thanks.
Gerd Hoffmann wrote:
Anne Facq wrote:
Because in Dom0 the device for a paravirt Domu (/dev/vg00/lvfoo in my case) is mapped to a virtual disk /dev/xvda (I created the Domu with virt-install), and the only way I found to mount this Domu filesystem, is to : - get the size of the boot sector of /dev/vg00/lvfoo (with fdisk -ul /dev/vg00/lvfoo) = 63 - compute the offset (multiply by block size) - specify this offset to the mount command : mount -o offset=32256 /dev/vg00/lvfoo /mnt/
Uh, oh, quite complicated and error prone. Can be done much easier.
Option (1): Use kpartx, it will create device mapper mappings for your partitions. Try "kpartx -v -a /dev/vg00/lvfoo", should give you /dev/vg00/lvfoop[1234]. "kpartx -d ... " removes the mappings.
Option (2): (works only with xen kernel): Configure the device as virtual disk *in Domain-0*: "xm block-attach 0 phy:/dev/vg00/lvfoo xvda w". Gives you /dev/xvda[1234]. "xm block-detach ..." removes it.
Many thanks for this solution, it helps me a lot.
If this can help someone, here are the steps to backup a Domu (filesystem on LVM in backend and on xvda in frontend) with the dump command from Dom0 (Fedora 8), using one of the 2 solutions you advised, kpartx :
----------------------------------------------------------------
# The DomU named "foo" must be stopped before dump xm shutdown -w foo
# Creates device mapper mappings /dev/mapper/lvfoop[1234] for /dev/vg00/lvfoo
kpartx -v -a /dev/vg00/lvfoo
# Mounts temporarly the filesystem to backup mount /dev/mapper/lvfoop1 /mnt/lvfoo/
# Launches the dump /sbin/dump 0 -L FULL_foo -f /BACKUP-XEN/foo.colddump /mnt/lvfoo/
# Umount the filesystem umount /mnt/lvfoo/
# Removes the mappings kpartx -d /dev/vg00/lvfoo
# Unmount the filesystem umount /mnt/lvfoo
# The DomU can now be restarted xm create --config /var/lib/xend/....
----------------------------------------------------------------
Regards,
Anne Facq
Henok Mikre wrote:
This helped me a great deal. Thanks. I just have a few questions...
- is it best to unmount the /mnt/lvfoo/ before or after kpartx -d? because you have it in your procedure list both before and after kpartx -d.
The /mnt/lvfoo must be unmounted before the kpartx -d, otherwise it will generate problems on the filesystem of the DomU (because the kpartx -d deletes partition mappings)
But the line "umount /mnt/lvfoo" after "kpartx -d" is an error due to a "copy and paste", sorry.
So here are the steps to backup a Domu (filesystem on LVM in backend and on xvda in frontend) with the dump command from Dom0 (Fedora 8) :
------------------------------------------------------------ # The DomU named "foo" must be stopped before dump xm shutdown -w foo
# Creates device mapper mappings /dev/mapper/lvfoop[1234] for /dev/vg00/lvfoo kpartx -v -a /dev/vg00/lvfoo
# Mounts temporarly the filesystem to backup mount /dev/mapper/lvfoop1 /mnt/lvfoo/
# Launches the dump /sbin/dump 0 -L FULL_foo -f /BACKUP-XEN/foo.colddump /mnt/lvfoo/
# Umount the filesystem umount /mnt/lvfoo/
# Removes the mappings kpartx -d /dev/vg00/lvfoo
# The DomU can now be restarted xm create --config /var/lib/xend/.... ------------------------------------------------------------
- is it possible to explore this dump file by either mounting it or some other method?
You can explore the dump file, using the "restore" command like this restore -if /var/BACKUP-XEN/foo.colddump
You can also restore in another filesystem the filesystem (of the Domu) that you backuped, following these steps :
lvcreate -L2048 -n lvfoo2 vg00 mkfs.ext3 /dev/vg00/lvfoo2 mkdir /mnt/lvfoo2 mount /dev/vg00/lvfoo2 /mnt/lvvfoo2 cd /mnt/lvfoo2 restore -rf /BACKUP-XEN/foo.colddump
- is this the best possible method of backing up a domU?
This method works well, but I would be interested in knowing other methods :-)
Regards
Anne Facq