é possível montar simultaneamente 2 volumes LVM que são cópias exatas um do outro (mesmos UUIDs)?


11

Eu clonei (usando dd) o disco rígido em um sistema ativo em vários discos rígidos de backup múltiplos. A partição raiz no sistema ativo é um volume LVM. As cópias de backup devem substituir o original e isso significa que elas precisam ter o mesmo UUID do mestre.

Pergunta rápida: é possível montar um dos HDs de backup no sistema ativo? Quando tento fazer isso, o LVM está compreensivelmente confuso sobre isso devido aos mesmos nomes de UUIDs e grupos de volumes. Seguindo a dica encontrada em [esta resposta] [1] para renomear o grupo LVM original, tentei:

  1. conectar o HD de backup externo a uma porta USB

  2. em execução (observe que a cadeia 'test' é o nome do grupo neste 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

Nesse ponto, eu esperava ter conseguido acessar os volumes lógicos individuais abaixo /dev/test/. Correr lvdisplayproduz.

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

No entanto, /dev/test/ele não existe e, portanto, não consigo acessar os volumes lógicos em /dev/test/roote /dev/test/swap_1como sugerido pelo lvdisplay.


Tempo de opinião: se você tem discos de sobra, deve realmente colocá-los em uma configuração RAID (mesmo que em RAID de software para economizar uma moeda), em vez de escolher uma solução como essa. RAID1 ou mesmo RAID5 são boas opções.
— Garrett

Respostas:


0

O objetivo principal dos UUIDs é identificar algo de maneira exclusiva, e o que você está tentando fazer os torna não exclusivos. Eu duvido muito que isso seja possível. Eu brinquei com pvchange -upara mudar o UUID de um PV duplicado, mas a operação sempre falhava.

Se você realmente precisar montar os backups no host ativo, sugiro que você faça backup dos LVs individualmente (por exemplo, crie um novo PV, VG e LVs no dispositivo de backup e adicione cada LV separadamente).


17

Se você deseja montar os lvs a partir de um disco clone, encontrei este método útil aqui http://www.linuxquestions.org/questions/linux-hardware-18/unable-to-change-uuid-of-cloned-drive- device-left-open-4175470893 /

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

sdx, sdy .. são os discos clonados que compõem a vg.

vgchange -ay orignalvgname_clone

Após isso, você poderá montar os lvs do disco clonado.


4
Essa deve ser a resposta aceita. Trabalhou para mim, obrigado!
— Neuviemeporte 21/01

Isso funciona e o vgimportclone faz o que o nome sugere. No meu caso, especifiquei todos os discos e partições que compilam o vg- por exemplo, vgimportclone -n orignalvgname_clone /dev/sdx /dev/sdx2 /dev/sdx5mas obviamente isso pode ser muito diferente de caso para caso.
— Jey Dwork

3

A resposta de trekkerboy / modonnell @ linuxquestions é mais direta, use vgimportclone.

Observe também que, depois de criar o clone, você deve ativá-lo vgchange -a y newvgnamee limpar os nós de dispositivo do oldvgname dmsetup remove /dev/oldvgname/*.

Para referência, o que se segue é um método mais manual, que aparentemente se assemelha a um subconjunto do que se pode ler na fonte vgimportclone.


Você pode fazer isso se conseguir primeiro desativar temporariamente o gerenciamento da cópia original, adicionando um padrão correspondente ao original no devicesfiltro lvm.conf. Por exemplo, se você clonado /dev/sdxem /dev/sdy, você tem que adicionar temporariamente /dev/sdxpara o filterdentro da devices { ... }seção.

Os dispositivos originais permanecerão online, mas as ferramentas LVM os ignorarão. Os sistemas de arquivos montados neles permanecerão montados e operacionais, o que não está diretamente associado ao gerenciamento do LVM.

Depois que o filtro estiver no lugar, faça um novo vgscanpara garantir que as duplicatas e somente elas estejam agora sob gerenciamento do LVM. Você pode ter certeza de ver os /dev/sdydispositivos duplicados via, por exemplo pvs.

Então faça:

vgchange -a n originalvgname

Isso desativará o grupo de volumes chamado originalvgname, mas como apenas os dispositivos duplicados estão visíveis, o desativará (o original originalvgnamejá está invisível por causa do filtro acima). Esta etapa é necessária para que você possa alterar livremente os atributos do grupo de volumes agora inativo e seus volumes físicos constituintes.

pvchange -u physicaldevice
vgchange -u originalvgname

Isso dará novos UUIDs para as duplicatas.

vgrename originalvgname newvgname

Isso renomeará o grupo de volumes duplicado.

Depois disso, você pode remover e filtrar lvm.confnovamente o filtro , e os dois conjuntos de dispositivos LVM estarão visíveis, sob diferentes nomes e UUIDs.

Como alternativa, se você não estiver realmente interessado em manter o nome original do VG e os UUIDs PV / VG, poderá descartá-los. /superuser/256061/lvm-and-cloning-hds


'Cópia original' é cópia de backup ou origem de backup (que está ativa)? Então você sugere desativar o sistema ativo e alterar seu UUID, correto?
— catpnosis

1
@catpnosis A fonte de backup, mas apenas seu gerenciamento . Tudo permanece online, mas as ferramentas LVM param temporariamente de poder ver o original. As ferramentas LVM então detectam as duplicatas e podem adaptá-las novamente, ou seja, alterar seus UUIDs. E quando terminar, você permitirá que eles vejam tudo, o que funcionará porque os UUIDs não se chocam mais.
— Josip Rodin

Obrigado. Essa é uma abordagem interessante. Difícil de entender. "Isso desativará o grupo de volumes nos dispositivos duplicados" - mas não é verdade?
— precisa saber é

1
@catpnosis é ativado vgscanautomaticamente pelo precedente , apenas significa que naquele momento as ferramentas do LVM veem as duplicatas (e não o original). O ponto principal é que você não deve tê-los ativos ao mesmo tempo - um ou outro, não os dois. Assim que você chegar ao estado em que vê apenas as duplicatas, poderá operá-las.
— Josip Rodin

0

Encontrei esse problema ontem. Eu tenho a configuração do sistema de arquivos (LVM (MD (sda, sdb, sdc-syncing-only-semanais-base))) no Linux e precisava acessar dados antigos no sdc.

Resolvi um pouco o problema anexando o disco de backup (sdc) a uma VM. Esta é uma operação segura, desde que eu conecte o disco com "qemu ... -drive file = / dev / sdc, readonly" (ou use uma opção de captura instantânea para configuração de cópia na gravação).

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.