On Mon, January 30, 2012 11:00, Bryn M. Reeves wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 01/30/2012 03:44 PM, James B. Byrne wrote: >> It was suggested on the centos-virt mailing list that I >> try using >> dmsetup to suspend this device: >> >> [root@vhost01 ~]# dmsetup suspend vg_vhost01-lv_vm_base >> [root@vhost01 ~]# [root@vhost01 ~]# dmsetup info -c >> vg_vhost01-lv_vm_base Name Maj Min Stat >> Open Targ >> Event UUID vg_vhost01-lv_vm_base 253 5 L-sw 2 1 >> 0 >> LVM-gXMt00E1RDjpSX3INLZ35Prtg66aX36BeAOlKIkmfSNQRNol3Hni920R4YVaZr52 >> >> > [root@vhost01 ~]# > > Just suspending isn't going to help. Device-mapper allows > you to > suspend a device, replace its definition (table) with a > new one and > then resume it - on occasion this can be useful to allow > you to > replace a device with a fake layer that always returns I/O > errors (it > will cause outstanding I/O to fail and "unstick" any apps > that were > blocked on the device). > > This doesn't seem to be one of those cases however since > your problem > is that something has the device open rather than that > access to the > device itself blocks. > >> However, now when I run lvremove, the command simply >> becomes >> unresponsive and does not return, even when a ^C >> interrupt is >> attempted. > > That's because the device is suspended (all I/O will > block). Resume it > and the lvremove will complete (with the same error as > before). > > # dmsetup resume <dev> > Done, blocking cleared and session returned. > > You need to find out what has them open and get it to > close them. If > the VMs have really been shut down then they should have > closed the > devices already - run lsof to check that no qemu-kvm > processes are > using them (but resume your LV first to avoid lsof > blocking..). > > Since these are VM images though I guess you may have some > partition mappings for them created by kpartx. > > Examine the device dependencies with dmsetup ls --tree or > lsblk: [root@vhost01 ~]# dmsetup resume vg_vhost01-lv_vm_base [root@vhost01 ~]# dmsetup ls --tree vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00p1 (253:10) └─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00 (253:6) └─ (8:2) vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_01p1 (253:9) └─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_01 (253:7) └─ (8:2) vg_vhost01-lv_swap (253:1) └─ (8:2) vg_vhost01-lv_root (253:0) └─ (8:2) ---> this is a problem instance vg_vhost01-lv_vm_basep2 (253:18) └─vg_vhost01-lv_vm_base (253:5) └─ (8:2) vg_vhost01-lv_vm_basep1 (253:17) └─vg_vhost01-lv_vm_base (253:5) └─ (8:2) <--- vg_vhost01-lv_centos_repos (253:8) └─ (8:2) vg_vhost01-lv_tmp (253:2) └─ (8:2) vg_vhost01-lv_vm_inet02.harte--lyne.ca_00 (253:21) └─ (8:2) vg_vhost01-lv_vm_inet03.harte--lyne.ca_00 (253:23) └─ (8:2) ---> This is a problem instance vg_vhost01-lv_vm_pas.harte--lyne.cap2 (253:16) └─vg_vhost01-lv_vm_pas.harte--lyne.ca (253:12) └─ (8:2) <--- vg_vhost01-lv_log (253:4) └─ (8:2) vg_vhost01-lv_vm_inet04.harte--lyne.ca_00 (253:25) └─ (8:2) ---> This is a problem instance vg_vhost01-lv_vm_pas.harte--lyne.cap1 (253:15) └─vg_vhost01-lv_vm_pas.harte--lyne.ca (253:12) └─ (8:2) <--- vg_vhost01-lv_spool (253:3) └─ (8:2) ---> This is a prolem instance vg_vhost01-lv_vm_pas.harte--lyne.ca_01p1 (253:14) └─vg_vhost01-lv_vm_pas.harte--lyne.ca_01 (253:13) └─ (8:2) <--- vg_vhost01-lv_vm_inet08.harte--lyne.ca_00 (253:24) └─ (8:2) vg_vhost01-lv_vm_inet09.harte--lyne.ca_00 (253:22) └─ (8:2) ---> This is a problem instance vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00p2 (253:11) └─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00 (253:6) └─ (8:2) <--- [root@vhost01 ~]# [root@vhost01 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 4G 0 rom sda 8:0 0 931.5G 0 disk ├─sda1 8:1 0 500M 0 part /boot └─sda2 8:2 0 931G 0 part ├─vg_vhost01-lv_root (dm-0) 253:0 0 15.6G 0 lvm / ├─vg_vhost01-lv_swap (dm-1) 253:1 0 7.8G 0 lvm [SWAP] ├─vg_vhost01-lv_tmp (dm-2) 253:2 0 3.9G 0 lvm /tmp ├─vg_vhost01-lv_spool (dm-3) 253:3 0 7.8G 0 lvm /var/spool ├─vg_vhost01-lv_log (dm-4) 253:4 0 7.8G 0 lvm /var/log ├─vg_vhost01-lv_vm_base (dm-5) 253:5 0 7.8G 0 lvm │ ├─vg_vhost01-lv_vm_basep1 (dm-17) 253:17 0 500M 0 dm │ └─vg_vhost01-lv_vm_basep2 (dm-18) 253:18 0 7.3G 0 dm ├─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00 (dm-6) 253:6 0 7.8G 0 lvm │ ├─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00p1 (dm-10) 253:10 0 500M 0 dm │ └─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00p2 (dm-11) 253:11 0 7.3G 0 dm ├─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_01 (dm-7) 253:7 0 31.3G 0 lvm │ └─vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_01p1 (dm-9) 253:9 0 31.3G 0 dm ├─vg_vhost01-lv_vm_inet02.harte--lyne.ca_00 (dm-21) 253:21 0 31.3G 0 lvm ├─vg_vhost01-lv_vm_inet08.harte--lyne.ca_00 (dm-24) 253:24 0 62.5G 0 lvm ├─vg_vhost01-lv_centos_repos (dm-8) 253:8 0 64G 0 lvm /var/data/ ├─vg_vhost01-lv_vm_pas.harte--lyne.ca (dm-12) 253:12 0 7.8G 0 lvm │ ├─vg_vhost01-lv_vm_pas.harte--lyne.cap1 (dm-15) 253:15 0 500M 0 dm │ └─vg_vhost01-lv_vm_pas.harte--lyne.cap2 (dm-16) 253:16 0 7.3G 0 dm ├─vg_vhost01-lv_vm_pas.harte--lyne.ca_01 (dm-13) 253:13 0 62.5G 0 lvm │ └─vg_vhost01-lv_vm_pas.harte--lyne.ca_01p1 (dm-14) 253:14 0 62.5G 0 dm ├─vg_vhost01-lv_vm_inet09.harte--lyne.ca_00 (dm-22) 253:22 0 31.3G 0 lvm ├─vg_vhost01-lv_vm_inet03.harte--lyne.ca_00 (dm-23) 253:23 0 31.3G 0 lvm └─vg_vhost01-lv_vm_inet04.harte--lyne.ca_00 (dm-25) 253:25 0 31.3G 0 lvm > In this case I have an LV named vg_mother/lv_t0 that > has a single kpartx partition mapping. > > If this is the case on your LV you can remove these > mappings with > "kpartx -d <dev>" where <dev> is the whole LV device. At this point I could use a little more guidance. I wish to remove all the lvs associated with the following defunct vm guests: base <--- guest name vg_vhost01-lv_vm_base (dm-5) vg_vhost01-lv_vm_basep1 (dm-17) vg_vhost01-lv_vm_basep2 (dm-18) pas.harte--lyne.ca <--- guest name vg_vhost01-lv_vm_pas.harte--lyne.ca (dm-12) vg_vhost01-lv_vm_pas.harte--lyne.cap1 (dm-15) vg_vhost01-lv_vm_pas.harte--lyne.cap2 (dm-16) vg_vhost01-lv_vm_pas.harte--lyne.ca_01 (dm-13) vg_vhost01-lv_vm_pas.harte--lyne.ca_01p1 (dm-14) pgsql--dbms.harte--lyne.ca <--- guest name vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00 (dm-6) vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00p1 (dm-10) vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_00p2 (dm-11) vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_01 (dm-7) vg_vhost01-lv_vm_pgsql--dbms.harte--lyne.ca_01p1 (dm-9) -- *** E-Mail is NOT a SECURE channel *** James B. Byrne mailto:ByrneJB@Harte-Lyne.ca Harte & Lyne Limited http://www.harte-lyne.ca 9 Brockley Drive vox: +1 905 561 1241 Hamilton, Ontario fax: +1 905 561 0757 Canada L8E 3C3 _______________________________________________ linux-lvm mailing list linux-lvm@redhat.com https://www.redhat.com/mailman/listinfo/linux-lvm read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/