A algum tempo atrás fiz um post aqui sobre como realizar o pvmove.
Existe uma dúvida comum que ocorre quando tenta-se fazer o pvmove de um disco maior para discos menores conforme o exemplo abaixo:
# pvs PV VG Fmt Attr PSize PFree /dev/sda2 rootvg
lvm2 a- 68.12G 46.09G /dev/sdh1 datavg lvm2 a- 100.00G 5.36G
/dev/sdj1 datavg lvm2 a- 200.00G 49.16G /dev/sdk1 datavg lvm2
a- 200.00G 49.37G /dev/sdl1 datavg lvm2 a- 200.00G 26.00G
/dev/sdm1 datavg lvm2 a- 200.00G 24.94G /dev/sdn1 datavg lvm2
a- 200.00G 51.54G /dev/sdo1 datavg lvm2 a- 200.00G 60.00G
No exemplo abaixo estou tentando movimentar o PV /dev/sdh1 para os demais PVs (/dev/sdj1, /dev/sdk1, /dev/sdl1, /dev/sdm1, /dev/sdn1 e /dev/sdo1), porém quando executo o comando abaixo ele retorna:
# pvmove /dev/sdh1 /dev/sdj1 /dev/sdk1 /dev/sdl1 /dev/sdm1 /dev/sdn1
/dev/sdo1 Insufficient suitable contiguous allocatable extents for
logical volume pvmove0: 17920 more required Unable to allocate temporary
LV for pvmove.
Isso ocorre porque ele não tem blocos continuos que suportem todo o
tamanho do volume.
Para isto o comando pvmove suporta mover por partes, desta forma faremos
assim:
pvmove /dev/sdh1:1-17920 /dev/sdj1 /dev/sdk1 /dev/sdl1 /dev/sdm1
/dev/sdn1 /dev/sdo1
Desta forma movimentaremos até o tamanho informado que é suportado. E continuaremos a movimentar por partes.
Dica: Você pode tentar movimentar totalmente o restante, comigo na maioria das vezes ele ja atinge o tamanho disponível.
pvmove /dev/sdh1 /dev/sdj1 /dev/sdk1 /dev/sdl1 /dev/sdm1 /dev/sdn1
/dev/sdo1
Comments !