9

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?

3 Answers 3

10
pvchange --uuid /physical/volume/path
vgchange --uuid /volume/group/name
4
  • you can't vgchange --uuid on a vg with active logical volumes. Commented Aug 2, 2016 at 15:00
  • 4
    vgimportclone /physical/volume/path helped me, at least a bit.
    – Ned64
    Commented May 21, 2017 at 18:19
  • @Ned64 this should be the accepted answer ! works for me.
    – LiMar
    Commented Mar 11, 2020 at 15:34
  • @LiMar OK, thanks for the feedback, I wrote an answer. Feel free to vote for it :-)
    – Ned64
    Commented Mar 11, 2020 at 16:57
8

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.

1

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

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .