You want to delete a logical volume but, when running the command “lvremove”, you get the following output:
# umount /data
# lvremove /dev/vg1/lv1 Can't remove open logical volume "lv1"
Solution
The above error usually means that the volume is still in use by some process. To find the process that is keeping the logical volume open, follow the steps below.
1. Find the major,minor number corresponding to the Logical Volume:
# dmsetup info -c | grep [lvname]
For Example:
# dmsetup info -c | grep lv1 vg1-lv1 253 25 L--w 1 1 0 LVM-4YO6buASebpXKOmdwdzyUTZ39mfubEFG0wWxeM7gYLEisWPszglyTCA0xCAuohpF
2. Find the major,minor number in ‘lsof’ command output.
# lsof | grep "major,minor"
For Example:
# lsof | grep "253,25" bckup 102585 0 19r BLK 253,25 0v12160 163622 /tmp/fileNabc3 (deleted)
3. Stop the application corresponding to the PID or kill the process. The PID as per above example is 102585. You could stop the application using that PID or kill the PID directly using kill command:
# kill -9 [PID]
4. Now removing the Logical Volume would complete successfully.
# lvremove vg1/lv1