Cuando intento eliminar un volumen lógico recibo el mensaje
#lvremove /dev/my-volumes/volume-1
Can't remove open logical volume "volume-1"
#lvchange -an -v /dev/my-volumes/volume-1
Using logical volume(s) on command line
/dev/dm-1: read failed after 0 of 4096 at 0: Input/output error
Deactivating logical volume "volume-1"
Found volume group "my-volumes"
LV my-volumes/volume-1 in use: not deactivating
#lvremove -vf /dev/my-volumes/volume-1
Using logical volume(s) on command line
/dev/dm-1: read failed after 0 of 4096 at 0: Input/output error
Can't remove open logical volume "volume-1"
#lvs
/dev/dm-1: read failed after 0 of 4096 at 0: Input/output error
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
volume-1 my-volumes -wi-ao 50.00g
¿Cómo puedo forzar la eliminación de este volumen?
Gracias Everett
Si no puede desmontar o mover un volumen lógico, verifique que no haya procesos que contengan el LV
Localice los números mayores / menores para el volumen lógico que está tratando de eliminar, por ejemplo: vol0
Tome nota de la quinta columna, que indica si un volumen está "abierto", y las columnas segunda y tercera, que son las ID principales y secundarias, respectivamente.
Encuentre cualquier proceso adjunto a este volumen buscando en las ID principales y secundarias descubiertas anteriormente:
Apague o elimine cualquier proceso que aún acceda al volumen para continuar desmontando y eliminando.
entonces prueba lvremove
fuente
Probablemente tenga iet o tgt ejecutándose (cuál depende de cuál sea su
iscsi_helper
valor en /etc/nova/nova.conf, por defecto es iet), y el servicio tiene un identificador de archivo abierto. Puede verificar cuál es haciendo algo como esto (en mi caso es tgt)Si es iet, detenga el servicio haciendo:
Si es tgt, detenga el servicio haciendo lo siguiente:
Entonces deberías poder eliminar tus volúmenes.
fuente
Me metí en una situación similar, pero la eliminación de LV estaba bloqueada, porque estaba usando mount -o bind.
El siguiente artículo ayudó mucho, usando lsof con números mayores / menores de LV mostró que el proceso mantiene abierto LV, en mi caso smbd.
Que simplemente cat / proc / monturas | grep LV_name me llevó a la conclusión, por qué lvremove o dmsetup remove basura para deshacerse de LV desmontado.
http://kb.eclipseinc.com/kb/why-cant-i-remove-a-linux-logical-volume/
fuente
Apague los contenedores LXC que usan los sistemas de archivos a través de su configuración: lxc.mount.entry
fuente
Si no puede eliminarlo
lvm
, siga estos pasos:desmontar la partición:
# umount / dev / sda8
(por ejemplo, he montado la partición en
/dev/sda8
)intenta eliminarlo
lvm
así:# lvremove / dev / vgname / lvname
Si recibe un error como " no se puede eliminar el volumen lógico abierto en Linux ", intente desactivar el LVM a través de los siguientes comandos y luego elimínelo:
Háganos saber si tiene algún problema.
fuente
Tuve este problema con un LV que proviene de 3 PV en un dispositivo iSCSI (con múltiples rutas).
¡Ninguna solución funcionó sino un simple reinicio ! ( coméntelo en fstab , para que no se vuelva a montar)
Quizás eso ayude a alguien.
fuente
esto también puede estar bloqueado por el servicio nfslock en RHEL, simplemente detenga ese servicio y listo.
fuente
Tuve un problema similar. El lv que intenté eliminar fue un dispositivo de bloqueo de VM, que contenía un grupo de volúmenes. Este grupo de volúmenes se filtró en lvm.conf, pero algunos elementos del mapeador de desarrollo se crearon anteriormente.
Para averiguar si un dispositivo lo está reteniendo, mire su número menor (253, ?? )
ll /dev/<vg>/<lv>
debe apuntar a../dm-??
Luego
ls -la /sys/dev/block/253:??/holders
le dará enlaces de vg (ex-> ../../dm-xx
) retransmitiendo en su dispositivo (como un pv)Elimínalos con
dmsetup remove /dev/dm-xx
(asegúrate de que esos dm no se usen) Luego debes eliminar / dev // que ya no es un "pv" en alguna partefuente
dmsetup remove /dev/dm-36
pero aparece el errordevice-mapper: remove ioctl on vg0-snap--tmp--vm06.docker--disk failed: – Device or resource busy – Command failed
: serverfault.com/questions/926681/…Puede desvincular su LV del dispositivo DM:
fusor -kuc / dev / my-sample-volume / volume-sample-1
/ dev / dm-21: 2400ce (raíz) 2739ce (raíz) 4793ce (raíz)
ls -l / dev / my-sample-volume / volume-sample-1
lrwxrwxrwx 1 raíz raíz 8 15 de agosto 02:53 / dev / my-sample-volume / volume-sample-1 -> ../dm-21
desvincular / dev / mi-muestra-volúmenes / volumen-muestra-1
lvremove / dev / my-sample-volume / volume-sample-1
fuente
lvremove
que vaya a funcionar despuésunlink
, ¿podría aclarar esa parte? Solo edita tu respuesta.En mi caso, estaba ejecutando cAdvisor en un contenedor, y esto parece evitar la eliminación de los dispositivos de bloque que se montaron cuando se inició. Mi solución fue:
docker restart $CONTAINER_ID
)fuente
Tengo el mismo problema que el tuyo. Intenté el siguiente comando y resolví: swapoff -a
lvremove ...
fuente