Um grupo de volumes consiste em volumes físicos inteiros. Um volume físico consiste em várias extensões (uma extensão é geralmente de 4 MB); cada extensão pode pertencer a um volume lógico diferente. Para transferir um volume lógico para um grupo diferente, você não pode simplesmente transferir extensões, pois isso pode dividir o volume físico entre o VG de origem e o VG de destino.
O que você pode fazer é transferir um ou mais PVs do VG de origem para o VG de destino, com o vgsplitcomando Você pode especificar quais PVs deseja transferir ou qual LV (mas apenas um de cada vez). Se você especificar um LV, ele e os outros LVs no VG de origem deverão estar em PVs separados. O VG de destino será criado se não existir nenhum VG com o nome especificado.
Pode ser necessário usar pvmoveprimeiro para organizar os volumes lógicos que você deseja mover para estar em PVs separados.
Se você pretendia manter os limites físicos do VG e mover os dados, não há ferramenta integrada, mas você poderia fazer um espelho e remover o original .
Parece que o target_group pode ser um já existente?
XTL 25/03
8
A partir do LVM em estiramento Debian (9.0), ou seja 2.02.168-2, é possível fazer uma cópia de um volume lógico entre os grupos de volume utilizando uma combinação de vgmerge, lvconverte vgsplit. Como uma movimentação é uma combinação de uma cópia e uma exclusão, isso também funcionará para uma movimentação.
Como alternativa, você pode usar pvmoveapenas para mover o volume.
Uma sessão de exemplo independente e completa usando dispositivos de loop e a
lvconvertseguir.
Resumo: criamos um grupo de volumes vg1com volume lógico lv1, e vg2com lv2, e fazemos uma cópia de lv1in vg2.
1) A maioria desses comandos precisará ser executada como root.
2) Se houver alguma duplicação dos nomes dos volumes lógicos nos dois grupos de volumes, vgmergeele se recusará a continuar.
3) Na mesclagem, os volumes lógicos em vg1devem estar inativos. E, na divisão, os volumes lógicos vg2pertencentes a vg1devem estar inativos. No nosso caso, é isso lv1.
A partir do LVM em estiramento Debian (9.0), ou seja 2.02.168-2, é possível fazer uma cópia de um volume lógico entre os grupos de volume utilizando uma combinação de
vgmerge
,lvconvert
evgsplit
. Como uma movimentação é uma combinação de uma cópia e uma exclusão, isso também funcionará para uma movimentação.Como alternativa, você pode usar
pvmove
apenas para mover o volume.Uma sessão de exemplo independente e completa usando dispositivos de loop e a
lvconvert
seguir.Resumo: criamos um grupo de volumes
vg1
com volume lógicolv1
, evg2
comlv2
, e fazemos uma cópia delv1
invg2
.Crie arquivos.
Configure dispositivos de loop em arquivos.
Crie volumes físicos em dispositivos de loop (inicialize dispositivos de loop para uso pelo LVM).
Crie os grupos de volumes vg1 e vg2 em / dev / loop1 e / dev / loop2, respectivamente.
Crie os volumes lógicos lv1 e lv2 nas vg1 e vg2, respectivamente.
Crie sistemas de arquivos ext4 em lv1 e lv2.
Opcionalmente, escreva algo no lv1 para verificar posteriormente se a cópia foi criada corretamente. Torne a vg1 inativa.
Execute o comando mesclar no modo de teste. Isso mescla vg1 em vg2.
E então de verdade.
Em seguida, crie um par de espelhos RAID 1
lv1
usandolvconvert
. Odest-pv
argumento dizlvconvert
para fazer a cópia espelhada/dev/loop2
.Depois divida o espelho. O novo LV é agora
lv1_copy
.Tornar
vg2/lv1
inativo.Então (modo de teste)
Sério
Resultado resultante:
NOTAS:
1) A maioria desses comandos precisará ser executada como root.
2) Se houver alguma duplicação dos nomes dos volumes lógicos nos dois grupos de volumes,
vgmerge
ele se recusará a continuar.3) Na mesclagem, os volumes lógicos em
vg1
devem estar inativos. E, na divisão, os volumes lógicosvg2
pertencentes avg1
devem estar inativos. No nosso caso, é issolv1
.fonte
Vou oferecer o meu:
se tudo estiver bom, remova a fonte
fonte