è possibile montare contemporaneamente 2 volumi LVM che sono copie esatte l'uno dell'altro (stessi UUID)?


11

Ho clonato (usando dd) il disco rigido in un sistema live su più dischi rigidi di backup multipli. La partizione radice nel sistema live è un volume LVM. Le copie di backup sono intese come sostituzioni drop-in per l'originale e questo significa che devono avere lo stesso UUID del master.

Domanda rapida: è possibile montare uno degli HD di backup sul sistema live? Quando provo a farlo LVM è comprensibilmente confuso su questo a causa degli stessi UUID e nomi dei gruppi di volumi. Seguendo il suggerimento trovato in [questa risposta] [1] per rinominare prima il gruppo LVM originale, ho provato:

  1. collegamento dell'HD di backup esterno a una porta USB

  2. in esecuzione (nota che la stringa 'test' è il nome del gruppo su questo sistema)

# vgrename test test-live
Volume group "test" successfully renamed to "test-live"
vgscan --mknodes
Reading all physical volumes.  This may take a while...
Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0
Found volume group "test" using metadata type lvm2
# vgchange -ay
Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0
2 logical volume(s) in volume group "test" now active

A questo punto mi sarei aspettato di essere in grado di accedere ai singoli volumi logici sotto /dev/test/. La corsa lvdisplayproduce.

Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0

  --- Logical volume ---
  LV Name                /dev/test/root
  VG Name                test
  LV UUID                UuKUH3-yzPo-CbOz-tU4B-W6om-qdMn-0XSNZU
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                126.48 GiB
  Current LE             32378
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

  --- Logical volume ---
  LV Name                /dev/test/swap_1
  VG Name                test
  LV UUID                OGJhJu-QByo-6AzG-sk1x-jh3e-dU9L-sHk91t
  LV Write Access        read/write
  LV Status              available
  # open                 2
  LV Size                3.90 GiB
  Current LE             999
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:2

Tuttavia, /dev/test/non esiste affatto e quindi non posso accedere ai volumi logici su /dev/test/roote /dev/test/swap_1come suggerito da lvdisplay.


Tempo di opinione: se hai dei dischi di riserva, dovresti davvero cercare di metterli in una configurazione RAID (se anche il software RAID per salvare un po 'di monete) invece di mettere in piedi una soluzione come questa. RAID1 o RAID5 sono entrambe buone opzioni.
Garrett,

Risposte:


0

Il punto centrale degli UUID è identificare in modo univoco qualcosa e ciò che stai cercando di fare li rende non unici. Dubito fortemente che ciò sia possibile. Ho pvchange -uprovato a cambiare l'UUID di un PV duplicato, ma l'operazione è sempre fallita.

Se hai davvero bisogno di montare i backup sull'host dal vivo, ti suggerisco di eseguire il backup degli LV singolarmente (ovvero creare un nuovo PV, VG e LV sul dispositivo di backup e dd separatamente ogni LV).


17

Se vuoi montare i LV da un disco clone, ho trovato questo metodo utile qui http://www.linuxquestions.org/questions/linux-hardware-18/unable-to-change-uuid-of-cloned-drive- dispositivo-sinistra-open-4175470893 /

vgimportclone -n orignalvgname_clone   /dev/sdx [/dev/sdy....]

sdx, sdy .. sono i dischi clonati che compongono il vg.

vgchange -ay orignalvgname_clone

Dopo questo dovresti essere in grado di montare lvs dal disco clonato.


4
Questa dovrebbe essere la risposta accettata. Ha funzionato per me, grazie!
neuviemeporte,

Funziona e vgimportclone fa ciò che suggerisce il nome. Nel mio caso, ho dovuto specificare tutti i dischi e le partizioni che compongono il vg- per esempio, vgimportclone -n orignalvgname_clone /dev/sdx /dev/sdx2 /dev/sdx5ma ovviamente questo potrebbe essere molto diverso da caso a caso.
Jey DWork,

3

La risposta di trekkerboy / modonnell @ linuxquestions è molto semplice, usare vgimportclone.

Si noti inoltre che dopo aver creato il clone, è necessario attivarlo con vgchange -a y newvgnamee si devono ripulire i nodi del dispositivo di oldvgname dmsetup remove /dev/oldvgname/*.

Per riferimento, ciò che segue è un metodo più manuale, che apparentemente assomiglia a un sottoinsieme di ciò che si può leggere nella fonte di vgimportclone.


Puoi farlo se sei in grado di disattivare temporaneamente la gestione della copia originale, aggiungendo un devicesfiltro corrispondente all'originale nel filtro lvm.conf. Ad esempio, se si clonato /dev/sdxin /dev/sdy, è necessario aggiungere temporaneamente /dev/sdxnella filterall'interno della devices { ... }sezione.

I dispositivi originali rimarranno online, ma gli strumenti LVM li ignoreranno. I filesystem montati su di essi rimarranno montati e operativi, il che non è strettamente associato alla gestione LVM.

Dopo aver installato il filtro, eseguine uno nuovo vgscanper assicurarti che i duplicati e solo loro siano ora sotto la gestione di LVM. Puoi assicurarti di vedere i /dev/sdydispositivi duplicati tramite ad es pvs.

Quindi fa:

vgchange -a n originalvgname

Questo disattiverà il gruppo di volumi chiamato originalvgname, ma poiché sono visibili solo i dispositivi duplicati, lo disattiverà su di essi (l'originale originalvgnameè già invisibile a causa del filtro sopra). Questo passaggio è necessario per poter quindi modificare liberamente gli attributi del gruppo di volumi ora inattivo e i suoi volumi fisici costituenti.

pvchange -u physicaldevice
vgchange -u originalvgname

Questo darà nuovi UUID ai duplicati.

vgrename originalvgname newvgname

Questo rinominerà il gruppo di volumi duplicati.

Successivamente, è possibile rimuovere il filtro lvm.confe ripetere la scansione ed entrambi i set di dispositivi LVM saranno visibili, con nomi e UUID diversi.

In alternativa, se in realtà non sei interessato a conservare il nome VG originale e gli UUID PV / VG, puoi invece eliminarli, cfr. /superuser/256061/lvm-and-cloning-hds


La "copia originale" è la copia di backup o l' origine di backup (che è attiva)? Quindi suggerisci di disattivare il sistema live e cambiare il suo UUID, giusto?
catpnosi,

1
@catpnosis L'origine del backup, ma solo la sua gestione . Tutto rimane online, ma gli strumenti LVM smettono temporaneamente di vedere l'originale. Gli strumenti LVM rilevano quindi i duplicati e sono in grado di riutilizzarli, ovvero di modificare i loro UUID. E una volta terminato, permetti loro di vedere tutto, il che funzionerà perché gli UUID non si scontrano più.
Josip Rodin,

Grazie. Questo è un approccio interessante. Difficile da capire però. "Questo disattiverà il gruppo di volumi sui dispositivi duplicati" - ma non proprio?
catpnosi,

1
@catpnosis viene attivato vgscanautomaticamente dal precedente , significa solo che in quel momento gli strumenti LVM vedono i duplicati (e non l'originale). Il punto è che non devi averli attivi entrambi contemporaneamente - l'uno o l'altro, non entrambi. Non appena arrivi nello stato in cui vedi solo i duplicati, puoi operare su di essi.
Josip Rodin,

0

Ho riscontrato questo problema solo ieri. Ho una configurazione di filesystem (LVM (MD (sda, sdb, sdc-syncing-solo-settimanale-base)))) su Linux, e avevo bisogno di accedere ai vecchi dati su sdc.

In qualche modo ho risolto il problema collegando il disco di backup (SDC) a una macchina virtuale. Questa è un'operazione sicura purché allego il disco con "qemu ... -drive file = / dev / sdc, readonly" (o utilizzo un'opzione di istantanea per la configurazione copia su scrittura).

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.