GNU/Linux >> Linux Esercitazione >  >> Cent OS

Impossibile trovare il dispositivo con uuid [UUID] – LVM non attivo al riavvio

Il problema

Dopo un riavvio il sistema non si avvierà né attiverà uno dei gruppi di volumi LVM. Il tentativo di attivazione manuale del gruppo produce il messaggio:

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

La soluzione

La stringa ETICHETTA nella posizione dei metadati contrassegna il dispositivo come parte di un dispositivo LVM. Senza questa stringa, lvm3 non tenterà di utilizzare il dispositivo come volume fisico. I metadati del dispositivo fisico possono essere sovrascritti a causa di un errore di sistema o di un'azione manuale deliberata.

Per Linux versioni 4 o 5, l'area dei metadati predefinita è 192 Kb. Per Linux versione 6, i metadati predefiniti sono 1Mb. Prima di tentare qualsiasi attività di ripristino o riparazione, ti consigliamo vivamente di fare una copia di backup di quest'area:

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

Per verificare la firma LVM, procedere come segue:

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

Se non viene prodotto alcun output, i metadati sono danneggiati.

Rivedi le informazioni in:

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

per le modifiche. Se questi sono stati modificati o sono incoerenti, è possibile che l'attività di ripristino danneggi l'intero volume di dati. Verifica che il dispositivo fisico o LUN sia ancora disponibile o ancora presentato a questo server.

Sii diligente nell'effettuare backup regolari per tutti i volumi LVM. Sebbene possano essere recuperabili, è anche possibile che un'errata configurazione danneggi completamente l'intero set di dati.

1. Tieni presente che questo elemento è importante solo se sul tuo sistema sono presenti anche dispositivi con percorsi multipli. Se non utilizzi LVM e il multipathing sullo stesso server, puoi tranquillamente saltare questo elemento.

Durante l'avvio del sistema, il sottosistema LVM riceve una notifica ogni volta che un dispositivo a blocchi, come un'unità disco o un LUN, in modo che il dispositivo possa essere utilizzato per costruire un volume LVM. Questo è un processo asincrono; non vi è alcuna garanzia che i dispositivi vengano rilevati nello stesso ordine ogni volta che il sistema viene avviato. Ciò significa che è probabile che i percorsi fisici di un dispositivo multipath vengano scoperti prima che il dispositivo logico composito sia completo, portando al percorso fisico richiesto dal sottosistema LVM prima che al sottosistema multipath venga offerto il dispositivo. Ci sono due risultati indesiderati di questa condizione:

un. Solo un singolo percorso per il dispositivo multipath viene utilizzato e rivendicato da LVM, lasciando il sistema vulnerabile a un errore single-point che causa una catastrofica perdita di connettività allo storage.

b. Poiché LVM ottiene la proprietà esclusiva del percorso fisico, il livello multipath segnala il dispositivo come occupato e non può creare il dispositivo multipath. Ciò lascia lo spazio di archiviazione soggetto a un errore in un singolo punto che impedisce l'accesso allo spazio di archiviazione. La soluzione è forzare l'LVM a considerare solo quei dispositivi a blocchi che devono effettivamente contenere parte di un volume LVM. Il modo per farlo è esaminare il file /etc/lvm/lvm.conf:

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

Se il tuo output è simile a quello sopra, hai un problema di configurazione LVM che probabilmente interromperà tutti i dispositivi multipath, se li usi sul tuo sistema. La modifica di questo parametro non rientra nell'ambito di questa nota. Procederemo presumendo che tu abbia corretto questo valore.

2. A volte la memoria che contiene i dati LVM è lenta da riconoscere e può essere montata correttamente se si accede dopo che il sistema si è stabilizzato. Per iniziare, faremo l'inventario dei dispositivi a blocchi disponibili e determineremo gli 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

Ora che abbiamo l'UUID che causa il problema, dobbiamo trovare il dispositivo associato:

# /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. Possiamo visualizzare la distribuzione dei volumi logici sui dispositivi fisici in questo modo:

# /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. Prova ad attivare il gruppo di volumi:

# /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. Prova a ridurre il gruppo del volume e rimuovere il dispositivo mancante:

# /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. Con il dispositivo mancante eliminato dal gruppo, il dispositivo LVM dovrebbe attivarsi:

# /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. Possiamo provare a ripristinare il gruppo di volumi utilizzando le informazioni memorizzate nella directory /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. Tentativo di sovrascrivere o reimpostare le informazioni sul dispositivo in base alle impostazioni UUID derivate dalle informazioni sul gruppo di volumi:

# /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. Apri le informazioni sul gruppo di volumi, ad esempio /etc/lvm/archive/data_vg_00003-1023778751.vg utilizzando un editor di testo e rimuovi la stringa "MANCANTE" dalla voce flag in modo che appaia così:

flags = [ ]

10. Ripristinare LVM utilizzando questa voce modificata:

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

11. Verifica l'ambiente:

# /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. Verifica la disponibilità di 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. Taglia con Lvm e Dm-crypt?

  2. Linux – Debian non rileva la scheda PCI seriale dopo il riavvio?

  3. pvcreate non riesce con l'errore:"Dispositivo /dev/mapper/mpatha non trovato (o ignorato dal filtro)."

  4. Risoluzione dei problemi iSCSI:obiettivi non rilevati dopo il riavvio

  5. Come attivare un volume fisico LVM “SOSPESO”.

Aggiungi spazio di archiviazione con LVM

Installa Linux con LVM

Integra Samba con Active Directory su CentOS

Una guida sugli snapshot LVM con ext4 su CentOS 7

Riavvia il comando in Linux con esempi

Perché find -mtime non funziona come previsto su file con fusi orari diversi?