Como verificar o progresso de lvconvert --replace

1

Estou substituindo alguns discos configurados com o RAID5 no LVM.

O comando usado para substituir é

lvconvert --replace /dev/oldpv vgname/lvname /dev/newpv

Inicia o processo em segundo plano.
O parâmetro -i # não tem efeito, seja -v

Eu tento muitas opções em lvs -o +<fields> (e pvs, vgs), ninguém retorna esse progresso.

Eu quero verificar o progresso porque são discos grandes e poucos LVs. Isso leva alguns minutos em execução, não quero iniciar o próximo LV enquanto o processo atual ainda está em execução ...

Por enquanto eu estou monitorando a E / S usando o comando dstats / iostats, mas esta é uma maneira muito feia de verificar isso ...

    
por ceinmart 04.09.2015 / 21:36

2 respostas

2

Eu não tenho 100% de certeza sobre o RAID5, mas para espelhos use

# dmsetup status

rootvg-testmirror: 0 9216000 raid raid1 2 AA 3233673/9216000 idle 0

Neste exemplo, é cerca de 33% quando você evalta 3233673/9216000

Eu não tenho discos suficientes para criar um teste RAID5, mas tenho certeza de que será algo semelhante.

    
por 04.09.2015 / 23:02
1

Expandindo a resposta do banjo67xxx você pode obter o percentual completo (com decimais) usando o seguinte:

echo "('dmsetup status | tail -n 1 | awk '{print $8}'')*100" | bc -l

Se você quiser limitar o número de casas decimais, use uma declaração de escala na string ecoada para bc. Aqui está o mesmo comando restrito a duas casas decimais:

echo "scale=2; ('dmsetup status | tail -n 1 | awk '{print $8}'')*100" | bc -l
    
por 11.04.2016 / 07:30

Tags