Here's how I test new LVM2 builds without interfering with the stable
LVM2 that is running the LV's on my development box.

1) Create a set of loopback devices.

2) Create a new directory to contain the LVM2 configuration files for
   this setup.  (I use /etc/lvm_loops)

3) Write a suitable lvm.conf file, this goes in the directory you just
   created.  eg, my /etc/lvm_loops/lvm.conf looks like:

   log {
        file="/tmp/lvm2_loop.log"
        level=9
        verbose=0
        overwrite=1
   }

   devices {
        scan = "/dev"
        filter = ["a/loop/", "r/.*/"]
   }


   The important this to note is the devices section which makes sure that
   only the loopback devices are considered for LVM2 operations.

4) When you want to use this test setup just set the environment
   variable LVM_SYSTEM_DIR to point to your config directory
   (/etc/lvm_loops in my case).

5) It's a good idea to do a vgscan to initialise the filters:

   export LVM_SYSTEM_DIR=/etc/lvm_loops
   ./lvm vgscan

   where ./lvm is the new build of LVM2 that I'm trying out.

7) Test away.  Make sure that you are explicit about which lvm
   executable you want to execute (eg, ./lvm if you are in
   LVM2/tools).

   



