Ripristina i dati da un PV di un mirror LVM


3

Un disco da 1 TB contenente una partizione che era l'unico PV in un VG contenente un LV stava fallendo diventando intollerabilmente lento senza riportare errori. Il mio primo pensiero è stato quello di tentare di utilizzare LVM per eseguire il mirroring dei dati su un altro disco e continuare senza interruzioni, quindi ho fatto questo:

  1. Errore di un disco da 1 TB da un mirror madam impostato nella stessa macchina
  2. Aggiunto quel disco al VG del disco guasto
  3. Modificato LV per avere un mirror

Ho lasciato questo durante la notte per copiare, dopo di che ha riferito di aver copiato lo 0,05% dei dati. Considerando questo un errore, ho acquistato due dischi sostitutivi da 1 TB tenendo presente questo:

  1. Aggiungi il primo nuovo disco all'array mdadm (fatto, nessun problema)
  2. Ripristina un backup su un LV sostitutivo sul disco valido che è stato rimosso dal set mdadm (fatto, nessun problema, manca circa un giorno di modifiche)
  3. Clonare tutto ciò che è leggibile dal disco guasto al secondo nuovo disco (fatto in un computer di riserva, ddrescue indica il successo completo dopo alcuni tentativi)
  4. Montare il clone e unire le modifiche con la copia non aggiornata ripristinata dal backup (bloccato qui)
  5. Aggiungi il secondo nuovo disco al VG sostitutivo e rispecchia il LV sostitutivo

Il problema è che non riesco a capire come ottenere LVM per consentirmi di accedere al clone del disco guasto.

LVM vede che manca un PV dal VG e non mi consente di attivare il VG, incluso con --partialo apportare modifiche, incluso lvconvert -m0o lvconvert --repair, fino a quando non viene trovato il dispositivo mancante. man vgreduceindica che vgreduce --removemissingrimuoverà il LV, non solo lo specchio sul PV mancante. Almeno una fonte suggerisce che potrebbe essere reso accessibile sostituendo il PV mancante usando pvcreate --uuid, il che richiederebbe di spostare fisicamente un buon disco dall'array mdadm alla macchina di riserva (o acquistarne un altro nuovo) e apparentemente richiede un backup di LVM metadati per il VG (che non ho).

Qual è il modo più semplice per accedere a LV clonato?
Può essere fatto senza aggiungere fisicamente un altro disco al computer di riserva?


AGGIORNARE

Ho spostato un altro disco nella macchina di riserva e ho tentato di ricreare il PV mancante. LVM non sembra supportare la ricreazione automatizzata, quindi sostanzialmente mi sono imperfetto fino a quando non sono riuscito in qualche modo a rendere disponibile la LV. L'ext4 FS su di esso è stato alterato in modo irriconoscibile - e2fsck ha esaurito la memoria ripetutamente cercando di ripararlo.

Ho provato di nuovo, usando ddrescue per copiare dal disco guasto sullo stesso disco buono (questa volta riportando alcuni errori), e questa volta LVM mi ha permesso di rendere disponibile il volume senza alcun disco aggiuntivo (proprio come mi aspettavo in primo luogo) . Questa volta l'FS era sostanzialmente intatto e sono stato in grado di recuperare tutto ciò che speravo di recuperare.

Non ho idea del perché LVM abbia rifiutato di attivare il VG sulla prima copia e abbia funzionato come previsto nella seconda. Poiché Google non restituisce alcuna spiegazione e non ci sono ancora risposte qui, sono preoccupato che il recupero dei volumi LVM sia inaffidabile e potrebbe essere meglio non utilizzarlo.


Non sono sicuro di aver compreso appieno il problema, ma non ti vgextend --restoremissing VG NEWPVconsente di aggiungere il nuovo disco con i dati ripristinati al VG?
Martian,

Nel punto in cui ero bloccato, non c'erano dati ripristinati, solo un clone inaccessibile dell'unità guasta. --restoremissingserve solo per ricollegare un PV che LVM non è riuscito a riconnettere automaticamente, ma il disco con il mirror dello 0,05% è stato riproposto (nel passaggio 2) per sostituire l'unità guasta.
ShadSterling
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.