Mounting partition stored inside Logical Volume
On a KVM Virtual machine using LVM storage, the LVM disk is partitioned as follows.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
root@mail:~# parted /dev/vg1/iredmail print Model: Linux device-mapper (linear) (dm) Disk /dev/dm-1: 64.4GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 2097kB 1049kB bios_grub 2 2097kB 1076MB 1074MB ext4 3 1076MB 64.4GB 63.3GB root@mail:~# |
I want to mount partition number 2 on the host machine.
1 |
2 2097kB 1076MB 1074MB ext4 |
To make the partition available to mount, you need to use kpartx utility. Install kpartx with
1 |
apt install kpartx |
To make the partitions inside the Logical volume available to mount, use the command
1 |
kpartx -a LVM_DEIVE_NAME |
In this case, I used
1 |
kpartx -a /dev/vg1/iredmail |
Now lvscan command will display the new device
1 2 3 4 5 |
root@mail:~# lvscan ACTIVE '/dev/vg1/win10' [100.00 GiB] inherit ACTIVE '/dev/vg1/iredmail' [60.00 GiB] inherit ACTIVE '/dev/ubuntu-vg/ubuntu-lv' [29.50 GiB] inherit root@mail:~# |
To mount the device, you can use the command
1 |
mount /dev/ubuntu-vg/ubuntu-lv /mnt |
IMPORTANT: do not mount the device on the host if it is used in the guest VM as it will result in data corruption. I mounted the disk on the host machine and created some files, but it did not show in the guest. After I reboot the guest VM, it did not boot back, I had to do fsck to get the VM to work again.
Back to LVM