Limpando entradas de um disco removido do LVM

Categoria: Linux Publicado: Segunda, 24 Maio 2021 Escrito por Helio Loureiro Imprimir

E minhas aventuras com LVM continuam.  Um dos HDDs começou a chiar.  Mas chiar mesmo, fazendo barulho de marteladas e resets.   Olhando nos logs eu vi que já tinha dado o que tinha que dar.  E justamente o HDD que fazia parte do mirroring em que estão os jogos da steam.

Então procedi com o comando pra terminar a montagem em mirroring.

lvconvert -m 0 diskspace/steam /dev/sdb3

Infelizmente eu dei um reboot em seguida e não salvei nada pra poder postar aqui.  Mas o mais importante foi depois de removido HDD e instalado um novo (também de 2 TB) que tinha parado aqui.  Como eu esqueci de remover o /dev/sdb3 do LVM, claro que subiu com vários erros. Particionei o novo HDD (/dev/sdb) com uma só partição LVM. E fui adicionar quando...

root@goosfraba ~# pvcreate /dev/sdb1
  WARNING: Couldn't find device with uuid CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa.
  WARNING: VG diskspace is missing PV CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa (last written to /dev/sdb3).
  Physical volume "/dev/sdb1" successfully created.

Epa!  Que catzo de CvlXC4-não-sei-lá-o-que é esse?  Sim, o disco que removi fisicamente e não tirei logicamente do LVM.  Com "vgdisplay" pude ver que realmente o problema estava lá.

root@goosfraba ~# vgdisplay 
  WARNING: Couldn't find device with uuid CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa.
  WARNING: VG diskspace is missing PV CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa (last written to /dev/sdb3).
  --- Volume group ---
  VG Name               diskspace
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  230
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                9
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                1
  VG Size               5.45 TiB
  PE Size               4.00 MiB
  Total PE              1429493
  Alloc PE / Size       518912 /

Resolver não foi nada complicado.  Bastou o seguinte comando:

root@goosfraba ~# vgreduce  --removemissing diskspace
  WARNING: Couldn't find device with uuid CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa.
  WARNING: VG diskspace is missing PV CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa (last written to /dev/sdb3).
  WARNING: Couldn't find device with uuid CvlXC4-LiEI-mr0c-vSky-oryk-Khrl-J1dyBa.
  Wrote out consistent volume group diskspace.

Pronto!  Metadados do disco antigo removidos.

root@goosfraba ~# vgdisplay 
  --- Volume group ---
  VG Name               diskspace
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  231
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                9
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size

Agora o trabalho seguinte foi adicionar o espaço novo dentro do VG (diskspace é o nome):

root@goosfraba ~# vgextend diskspace /dev/sdb1
  Volume group "diskspace" successfully extended
root@goosfraba ~# vgdisplay 
  --- Volume group ---
  VG Name               diskspace
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  232
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                9
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               

Em seguida colocar o disco novo como mirroring novamente:

root@goosfraba ~# lvconvert -m 1 /dev/diskspace/steam /dev/sdb1
Are you sure you want to convert linear LV diskspace/steam to raid1 with 2 images enhancing resilience? [y/n]: y
  Logical volume diskspace/steam successfully converted.

E pronto.  Acabou.  Isso mesmo.  Foi fácil assim.  Agora é só ir monitorando o progresso da cópia no disco novo.

root@goosfraba ~# lvs
  LV       VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home     diskspace -wi-a----- 500.00g                                                    
  opt      diskspace -wi-a-----   2.00g                                                    
  root     diskspace -wi-ao----  10.00g                                                    
  steam    diskspace rwi-a-r--- 750.00g                                    0.88            
  swap     diskspace -wi-a-----  15.00g                                                    
  tmp      diskspace -wi-a-----   5.00g                                                    
  usr      diskspace -wi-ao----  95.00g                                                    
  usrlocal diskspace -wi-a----- 600.00g                                                    
  var      diskspace -wi-a-----  50.00g                                                    
root@goosfraba ~# lvs
  LV       VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home     diskspace -wi-a----- 500.00g                                                    
  opt      diskspace -wi-a-----   2.00g                                                    
  root     diskspace -wi-ao----  10.00g                                                    
  steam    diskspace rwi-a-r--- 750.00g                                    1.10            
  swap     diskspace -wi-a-----  15.00g                                                    
  tmp      diskspace -wi-a-----   5.00g                                                    
  usr      diskspace -wi-ao----  95.00g                                                    
  usrlocal diskspace -wi-a----- 600.00g                                                    
  var      diskspace -wi-a-----  50.00g                                                    

Como são 750 GB a coisa demora um pouco.  Mas com LVM, tudo é muito fácil.

Happy hacking :)

Acessos: 930
Mastodon Mastodon
We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.