LVM: regenerate a UUID?

I have some virtual machines which were clones of the same original disk image, which contained some LVM volumes. When I clone these, I end up with multiple LVM volumes (albeit on different hosts) which have the same 'unique' ID. Is there any way I can get LVM to change the UUID of an existing volume?


pvchange --uuid /physical/volume/path
vgchange --uuid /volume/group/name

According to its man page, the command vgimportclone will do the work for you:

vgimportclone /physical/volume/path

This is used for importing a volume group (VG) from a cloned physical volume (PV), e.g. after a snapshot or other duplicated PV.


pvchange was not working for me, it kept avoiding the volume with

WARNING: Not using device /dev/sdc for PV C0s0Wg-HcnQ-LOP3-QwmR-dhSX-4wW1-hRhxm3. WARNING: PV C0s0Wg-HcnQ-LOP3-QwmR-dhSX-4wW1-hRhxm3 prefers device /dev/sdb because device is used by LV. Device /dev/sdc excluded by a filter.

Ultimately, wipefs /dev/sdc was the solution, after which I simply used

pvcreate /dev/sdc