GNU/Linux >> Tutoriales Linux >  >> Linux

Corrupción de metadatos LVM VG con 'Error de suma de verificación'

El problema

Se informan "errores de suma de comprobación" cuando se ejecutan comandos LVM en el servidor CentOS/RHEL.

# vgs
 /dev/mapper/cx0009_lun45: Checksum error
 /dev/mapper/cx0009_lun48: Checksum error
 VG #PV #LV #SN Attr VSize VFree 
 vg00 1 7 0 wz--n- 279.12G 159.12G
 vgcommrmandb 1 6 0 wz--n- 20.00G 44.00M
 vgcotsoracle 1 1 0 wz--n- 20.00G 4.00M
 vgcotsorapit 1 1 0 wz--n- 50.00G 4.00M
...
# lvs
 /dev/mapper/cx0009_lun45: Checksum error
 /dev/mapper/cx0009_lun48: Checksum error
 LV VG Attr LSize Origin Snap% Move Log Copy% Convert
 crashvol vg00 -wi-ao 64.00G 
 homevol vg00 -wi-ao 4.00G 
 oemagentvol vg00 -wi-ao 10.00G 
 rootvol vg00 -wi-ao 10.00G 
 swapvol vg00 -wi-ao 16.00G 
 tmpvol vg00 -wi-ao 8.00G 
...
# pvs
 /dev/mapper/cx0009_lun45: Checksum error
 /dev/mapper/cx0009_lun48: Checksum error
 PV VG Fmt Attr PSize PFree 
 /dev/cciss/c0d0p2 vg00 lvm2 a-- 279.12G 159.12G
 /dev/mapper/cx0008_lun37 vgeflxwmq lvm2 a-- 5.00G 1.00G
 /dev/mapper/cx0009_lun30 vgeflxjvastb lvm2 a-- 40.00G 8.04G
 /dev/mapper/cx0009_lun31 vgeflxhdb1arch lvm2 a-- 60.00G 20.00M

Solución

Se almacena una suma de verificación en los metadatos de LVM2 para que se pueda detectar la presencia de corrupción antes de que los datos se dañen realmente. Este problema generalmente ocurrirá cuando esa suma de verificación no coincida con una suma de verificación calculada después de procesar los metadatos.

Puede haber muchas causas diferentes del error de suma de comprobación, algunas de ellas incluyen las siguientes:

  1. Si 2 hosts intentan actualizar los metadatos LVM2 al mismo tiempo de forma independiente (es decir, como una situación de clúster) y LVM agrupado (clvm) no está en uso.
  2. Errores de E/S que ocurren mientras se actualizan los metadatos (las actualizaciones de LVM2 no se registran, por lo que las interrupciones en las actualizaciones de E/S pueden causar daños).
  3. Hay algún problema en el entorno SAN en caso de que las rutas subyacentes provengan de SAN.

Para resolver este error, siga los pasos que se indican a continuación:

1. Haga una copia de seguridad de todos sus datos en los volúmenes lógicos.

2. Detenga todos los servicios que tengan recursos LVM (para que se puedan desmontar los volúmenes y desactivar los grupos de volúmenes). El servicio no debe ejecutarse en ningún nodo del clúster (si el error se informa en el clúster).

3. Restaure los metadatos usando el comando 'vgcfgrestore '. Los archivos de copia de seguridad de metadatos de LVM se almacenan en /etc/lvm/backup y /etc/lvm/archive. El comando vgcfgrestore por defecto usa el archivo de copia de seguridad en /etc/lvm/backup. Ejecute vgcfgrestore para restaurar los metadatos de LVM. Por ejemplo,

# vgcfgrestore vg_os
/dev/mapper/cx0009_lun45: Checksum error
/dev/mapper/cx0009_lun48: Checksum error
Restored volume group vg_os

4. Activa el grupo de volumen.

# vgchange -ay vg_os
1 logical volume(s) in volume group "vg_os" now active

5. Ejecute el comando "pvscan" para verificar si puede ver los "errores de suma de comprobación" ahora.

# pvscan

6. Vuelva a habilitar los servicios que se detuvieron antes de vgcfgrestore.

Conclusión

El uso de vgcfgrestore puede restaurar una copia de seguridad de los metadatos de LVM en los volúmenes físicos de LVM antes de que ocurriera la corrupción. Puede usar el archivo de copia de seguridad predeterminado en /etc/lvm/backup para restaurar los metadatos de una copia de seguridad anterior. Si tiene un archivo de copia de seguridad en otra ubicación, también puede especificar el archivo de copia de seguridad con el comando vgcfgrestore como se muestra a continuación.

# vgcfgrestore -f /path/to/backup/file vgname


Linux
  1. El archivo de metadatos no coincide con la suma de verificación:¡error YUM!

  2. ¿Este error sobre Upstart/systemd con Runit?

  3. Error de LVM "ADVERTENCIA:Se encontraron metadatos inconsistentes" - Cómo resolver en CentOS / RHEL

  4. El comando lvremove falla con el error "LVM:no se puede eliminar el volumen lógico abierto"

  5. Los comandos LVM fallan con "Error al cargar el archivo de configuración /etc/lvm/lvm.conf"

Instalar Linux con LVM

Cómo administrar el almacenamiento en Linux con LVM

Aprenda LVM en Linux con herramientas gráficas

Cómo corregir el error de conversión con Calibre

Cómo crear un grupo de volúmenes en Linux con LVM

Reparación de error de tubería rota con conexión SSH