GNU/Linux >> Tutoriales Linux >  >> Cent OS

“mapeador de dispositivos:reanudar ioctl falló:argumento no válido” – error al ejecutar lvcreate/lvresize/lvextend

El problema

No se puede realizar lvresize, lvextend o lvcreate en volúmenes lógicos y se recibe el siguiente error después de ejecutar cualquier comando LVM:

device-mapper: resume ioctl on (major:minor) failed: Invalid argument
Unable to resume vgname-lvname (major:minor)
Failed to activate new LV

La solución

El error anterior se activa si se ha realizado alguna configuración incorrecta con LVM. Este problema se produce cuando PSize (Tamaño físico) se establece mayor que el DevSize (Tamaño del dispositivo). Se puede verificar con la salida del siguiente comando:

# pvs -v
Scanning for physical volume names
PV        VG      Fmt   Attr  PSize    PFree   DevSize  PV  UUID
/dev/xvdc testvg1 lvm2  a-    10.00G   5.00G   5.00G        2XEI4w-LmJi-iR3B-xXVU-XxK3-dfTf-WPZXF6

Aquí puede notar que PSize está configurado en 10G, pero el tamaño real del dispositivo es solo 5G y, por lo tanto, PSize debe ser más pequeño o igual que DevSize. También puede ver los cambios realizados echando un vistazo a los archivos de almacenamiento de lvm.

# cd /etc/lvm/archive
# less testvg1_00000-320386444.vg
description = "Created *before* executing 'pvresize --setphysicalvolumesize 10G /dev/xvdc'"

Arriba, el tamaño del volumen físico para el archivo de almacenamiento está configurado en 10 G, lo que provocó la corrupción o el bloqueo de la funcionalidad LVM.

Plan de acción

NOTA :Como va a reducir el tamaño, primero haga la copia de seguridad completa para evitar perder sus datos en el peor de los casos, ya que es un método muy arriesgado y también ha configurado su /root en el mismo volgroup.

1. Revierta todos los cambios realizados en sus volúmenes lógicos y vuelva al tamaño original.
2. Luego use pvresize -v /dev/xxxxx/xxxxx, según su convención de nomenclatura.
3. Ahora verifique la salida pvs -v y asegúrese de que PVSize y DEVSize coincidan.
4. Finalmente ejecute lvresize, debería funcionar.

Si desea aumentar el tamaño del volumen físico, primero cree una nueva partición y luego inicialice con pvcreate y agregue esta partición al volgroup existente con vgextend e inicie el procedimiento normal para lv extend.

Ejemplo

A continuación se muestra un ejemplo del Plan de Acción anterior:

1. Revertir los cambios realizados en LV y asegurarse de que LVSize esté dentro del límite de Devsize.

# lvresize -L 4G /dev/testvg1/test_lv
WARNING: Reducing active logical volume to 4.00 GB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce test_lv? [y/n]: y
Reducing logical volume test_lv to 4.00 GB
Logical volume test_lv successfully resized

2. Ahora usará pvresize -v /dev/xxxx/xxxx

# pvresize -v /dev/xvdc
Using physical volume(s) on command line
Archiving volume group "testvg1" metadata (seqno 9).
Resizing physical volume /dev/xvdc from 2559 to 1279 extents.
Resizing volume "/dev/xvdc" to 10485376 sectors.
Updating physical volume "/dev/xvdc"
Creating volume group backup "/etc/lvm/backup/testvg1" (seqno 10).
Physical volume "/dev/xvdc" changed
1 physical volume(s) resized / 0 physical volume(s) not resized

3. Verificación mediante el comando pvs -v:

# pvs -v
Scanning for physical volume names
PV         VG      Fmt    Attr  PSize  PFree      DevSize  PV  UUID
/dev/xvdc  testvg1 lvm2   a-    5.00G  1020.00M   5.00G        2XEI4w-LmJi-iR3B-xXVU-XxK3-dfTf-WPZXF6

Ahora es posible ver que PSize es igual a DevSize.

4. Ahora realice cualquier otra operación normal con su LVM.


Cent OS
  1. Swapon no puede montar el intercambio:da un error de argumento no válido

  2. "mlock falló:no se puede asignar memoria" error de comando lvcreate en CentOS/RHEL 7

  3. "mdadm:No se encontraron matrices en el archivo de configuración":error al ejecutar 'mdadm -assemble -scan'

  4. El volumen "test_vg/lvol0" no está activo localmente:error al ejecutar lvcreate

  5. rpm:error al cargar bibliotecas compartidas:encabezado ELF no válido

Cómo resolver el error "Error:rpmdb open fail" en CentOS

Espacio en el disco con poco registro de errores /var/log/cups/error.log?

Cómo crear LVM usando los comandos vgcreate, lvcreate y lvextend lvm2

Guía para principiantes de LVM (Gestión de volúmenes lógicos)

lvcreate/lvremove falló con el error "No se puede eliminar el volumen lógico de la instantánea fusionada"

Error al volver a leer la tabla de particiones con el error 22:argumento no válido