GNU/Linux >> Tutoriels Linux >  >> Cent OS

Impossible de trouver le périphérique avec uuid [UUID] - LVM non actif au redémarrage

Le problème

Après un redémarrage, le système ne démarre pas ou n'active pas l'un des groupes de volumes LVM. Essayer d'activer le groupe manuellement produit le message :

Couldn't find device with uuid '[UUID]'

La solution

La chaîne LABELONE à l'emplacement des métadonnées marque le périphérique comme faisant partie d'un périphérique LVM. Sans cette chaîne, lvm3 ne tentera pas d'utiliser le périphérique en tant que volume physique. Les métadonnées de l'appareil physique peuvent être écrasées en raison d'une erreur système ou d'une action manuelle délibérée.

Pour les versions Linux 4 ou 5, la zone de métadonnées par défaut est de 192 Ko. Pour Linux version 6, les métadonnées par défaut sont de 1 Mo. Avant de tenter toute activité de récupération ou de réparation, nous vous encourageons fortement à faire une copie de sauvegarde de cette zone :

# /bin/dd if=/dev/xvdd of=/root/xvdd.metadata bs=1K count=[192_or_1024]

Pour vérifier la signature LVM, procédez comme suit :

# /bin/strings /root/xvdd.metadata | /bin/fgrep LABELONE

Si aucune sortie n'est produite, les métadonnées sont corrompues.

Vérifiez les informations dans :

/etc/lvm/backup
/etc/lvm/archives

pour les changements. Si ceux-ci ont été modifiés ou sont incohérents, il est possible que l'activité de restauration corrompe l'intégralité des données du volume. Vérifiez que le périphérique physique ou le LUN est toujours disponible ou toujours présenté à ce serveur.

Faites preuve de diligence pour effectuer une sauvegarde régulière de tous les volumes LVM. Bien qu'ils puissent être récupérés, il est également possible qu'une mauvaise configuration corrompe complètement l'ensemble de données.

1. Notez que cet élément n'est important que si vous avez également des périphériques à chemins multiples sur votre système. Si vous n'utilisez pas LVM et le multipathing sur le même serveur, vous pouvez ignorer cet élément en toute sécurité.

Lors du démarrage du système, le sous-système LVM est averti chaque fois qu'un périphérique bloc, tel qu'un lecteur de disque ou un LUN, est utilisé pour construire un volume LVM. Il s'agit d'un processus asynchrone; il n'y a aucune garantie que les périphériques seront découverts dans le même ordre à chaque démarrage du système. Cela signifie que les chemins physiques d'un périphérique à chemins multiples sont susceptibles d'être découverts avant que le périphérique logique composite ne soit terminé, ce qui conduit à ce que le chemin physique soit revendiqué par le sous-système LVM avant que le sous-système à chemins multiples ne se voie offrir le périphérique. Il y a deux résultats indésirables à cette condition :

un. Un seul chemin vers le périphérique multichemin est utilisé et réclamé par LVM, laissant le système vulnérable à une défaillance en un seul point entraînant une perte catastrophique de connectivité au stockage.

b. Étant donné que LVM acquiert la propriété exclusive du chemin physique, la couche multivoie signale que le périphérique est occupé et ne peut pas créer le périphérique multichemin. Cela laisse le stockage soumis à une défaillance en un seul point empêchant l'accès au stockage. La solution consiste à forcer le LVM à ne prendre en compte que les périphériques de bloc qui doivent réellement contenir une partie d'un volume LVM. Pour ce faire, consultez le fichier /etc/lvm/lvm.conf :

# /bin/fgrep -n -e 's/#.*//' -e '/filter/p' /etc/lvm/lvm.conf
filter = [ "a/.*/" ]

Si votre sortie ressemble à ce qui précède, vous avez un problème de configuration LVM qui cassera probablement tous les périphériques multivoies, si vous les utilisez sur votre système. La modification de ce paramètre sort du cadre de cette note. Nous continuerons en supposant que vous avez corrigé cette valeur.

2. Parfois, le stockage qui contient les données LVM est lent à être reconnu et peut être monté avec succès s'il est accédé après la stabilisation du système. Pour commencer, nous allons inventorier les périphériques de bloc disponibles et déterminer les UUID :

# /sbin/vgscan
Reading all physical volumes.  This may take a while...
Couldn't fine device with uuid  70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
Found volume group "data_vg" using metadata type lvm2

Maintenant que nous avons l'UUID à l'origine du problème, nous devons trouver l'appareil associé :

# /sbin/pvs -o +uuid
Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  PV             VG      Fmt  Attr PSize   PFree   PV UUID
  /dev/xvdc      data_vg lvm2 a--  996.00M      0  VrVT1L-CTcT-9Nn9-oIAx-BnEA-X7sv-vJO6RE
  /dev/xvde      data_vg lvm2 a--  996.00M 428.00M tGIqvd-lsYv-7JmV-1bfD-t7BL-HaGi-rmIYW0
  unknown device data_vg lvm2 a-m  996.00M      0  70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt

3. Nous pouvons voir la distribution des volumes logiques sur les appareils physiques comme ceci :

# /sbin/lvs -o +devices
Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  LV         VG      Attr   LSize Origin Snap%  Move Log Copy%  Convert Devices
  data_vg_lv data_vg -wi-a- 2.50G                                       /dev/xvdc(0)
  data_vg_lv data_vg -wi-a- 2.50G                                       unknown device(0)
  data_vg_lv data_vg -wi-a- 2.50G                                       /dev/xvde(0) =

4. Essayez d'activer le groupe de volumes :

# /sbin/vgchange -a y data_vg
  Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  Refusing activation of partial LV data_vg_lv. Use --partial to override.
  1 logical volume(s) in volume group "data_vg" now active

5. Essayez de réduire le groupe de volumes et supprimez le périphérique manquant :

# /sbin/vgreduce --removemissing data_vg
  Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  WARNING: Partial LV data_vg_lv needs to be repaired or removed.
  WARNING: There are still partial LVs in VG data_vg.
  To remove them unconditionally use: vgreduce --removemissing --force.
  Proceeding to remove empty missing PVs.
# /sbin/vgreduce --removemissing data_vg --force
  Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  Removing partial LV data_vg_lv.
  Logical volume "data_vg_lv" successfully removed
  Wrote out consistent volume group data_vg

6. Une fois le périphérique manquant éliminé du groupe, le périphérique LVM doit s'activer :

# /sbin/pvs
  PV         VG      Fmt  Attr PSize   PFree
  /dev/xvdc  data_vg lvm2 a--  996.00M 996.00M
  /dev/xvde  data_vg lvm2 a--  996.00M 996.00M
# /sbin/lvs -o +devices
#
# /sbin/vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "data_vg" using metadata type lvm2
# /sbin/vgdisplay
  --- Volume group ---
  VG Name               data_vg
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               1.95 GB
  PE Size               4.00 MB
  Total PE              498
  Alloc PE / Size       0 / 0
  Free  PE / Size       498 / 1.95 GB
  VG UUID               yTOvvd-ZjUe-gXP0-41BT-qUIk-8uPR-lpr9Pw

7. Nous pouvons essayer de restaurer le groupe de volumes en utilisant les informations stockées dans le répertoire /etc/lvm/archive/ :

# /sbin/vgcfgrestore -f data_vg_00003-1023778751.vg data_vg
  Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  Cannot restore Volume Group data_vg with 1 PVs marked as missing.
  Restore failed.

8. Tentative d'écrasement ou de restauration des informations sur l'appareil en fonction des paramètres UUID dérivés des informations sur le groupe de volumes :

# /sbin/pvcreate --restorefile /etc/lvm/archive/data_vg_00003-1023778751.vg --uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt /dev/xvdd
  Couldn't find device with uuid 70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt.
  Writing physical volume data to disk "/dev/xvdd"
  Physical volume "/dev/xvdd" successfully created

9. Ouvrez les informations sur le groupe de volumes, par exemple /etc/lvm/archive/data_vg_00003-1023778751.vg à l'aide d'un éditeur de texte et supprimez la chaîne "MISSING" de l'entrée flags pour qu'elle ressemble à ceci :

flags = [ ]

10. Restaurez le LVM en utilisant cette entrée modifiée :

# /sbin/ vgcfgrestore -f /etc/lvm/archive/data_vg_00003-1023778751.vg data_vg
  Restored volume group data_vg

11. Vérifiez l'environnement :

# /sbin/vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "data_vg" using metadata type lvm2
# /sbin/ pvs -o +uuid
  PV         VG      Fmt  Attr PSize   PFree   PV UUID
  /dev/xvdc  data_vg lvm2 a--  996.00M      0  VrVT1L-CTcT-9Nn9-oIAx-BnEA-X7sv-vJO6RE
  /dev/xvdd  data_vg lvm2 a--  996.00M      0  70FBaa-3QKh-HTAF-gUzZ-u3mu-2RRs-hI3BIt
  /dev/xvde  data_vg lvm2 a--  996.00M 428.00M tGIqvd-lsYv-7JmV-1bfD-t7BL-HaGi-rmIYW0

12. Vérifiez la disponibilité de LVM :

# /sbin/lvs -o +devices
  LV         VG      Attr   LSize Origin Snap%  Move Log Copy%  Convert Devices
  data_vg_lv data_vg -wi--- 2.50G                                       /dev/xvdc(0)
  data_vg_lv data_vg -wi--- 2.50G                                       /dev/xvdd(0)
  data_vg_lv data_vg -wi--- 2.50G                                       /dev/xvde(0)


Cent OS
  1. Couper avec Lvm et Dm-crypt ?

  2. Linux – Debian ne détecte pas la carte PCI série après le redémarrage ?

  3. Linux – Comment trouver le pilote (module) associé à un périphérique sous Linux ?

  4. Dépannage iSCSI :Cibles non détectées après le redémarrage

  5. Avertissements "Found duplicate PV" lors de l'utilisation de LVM avec un stockage multivoie dans RHEL/CentOS

Ajouter du stockage avec LVM

Installer Linux avec LVM

Intégrer Samba à Active Directory sur CentOS

Un guide sur les instantanés LVM avec ext4 sur CentOS 7

Commande de redémarrage sous Linux avec des exemples

trouver :commande introuvable