Um PV do LVM pode ser encolhido no começo?

0

Eu herdei um servidor rodando o Ubuntu 14.04.5 LTS que tem um único RAID de 30 TB particionado em uma pequena partição de inicialização very e uma grande partição LVM contendo tudo o resto. Aqui está a configuração atual:

# lsblk
NAME                     MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                        8:0    0    30T  0 disk 
├─sda1                     8:1    0   113M  0 part /boot
└─sda2                     8:2    0    30T  0 part 
  ├─vg01-root (dm-0)     252:0    0  55,9G  0 lvm  /
  ├─vg01-pooling (dm-1)  252:1    0   1,8T  0 lvm  /var/lib/bareos/pooling
  ├─vg01-postgres (dm-2) 252:2    0 465,7G  0 lvm  /postgres
  ├─vg01-swap (dm-3)     252:3    0   3,7G  0 lvm  [SWAP]
  └─vg01-storage (dm-4)  252:4    0  27,7T  0 lvm  /var/lib/bareos/storage

Como você pode ver, a partição de inicialização é muito pequena. Então eu preciso liberar uma quantidade comparativamente pequena de espaço no início de sda2 para crescer sda1. Há muitos tutoriais bem escritos de como diminuir um volume físico LVM na rede, mas o espaço liberado aparece invariavelmente no fim do PV.

É claro que posso mover o PV depois de diminuí-lo, mas isso significaria copiar os 30 TB inteiros, o que levaria muito tempo, aumentando o risco de algo dar errado e me parecer um grande desperdício. Existe uma maneira melhor? Não importa qual dos LVs o espaço é retirado, todos eles têm um Gig ou dois de sobra.

    
por Tilman 07.04.2017 / 16:16

1 resposta

1

Não conheço uma maneira de mover o início de um PV do LVM, mas isso não significa que não seja possível; meu conhecimento pode simplesmente ser inadequado.

Se você não souber de uma solução melhor, considere o seguinte procedimento:

  1. Reduza o volume físico a partir do final, deixando o espaço não particionado no final necessário para uma nova partição /boot . (Existem várias perguntas neste site sobre como redimensionar um PV do LVM, como este e este aqui )
  2. Crie uma nova partição /boot maior após o PV do LVM, agora reduzido.
  3. Ajuste o carregador de inicialização e as configurações de /etc/fstab para usar o novo local da partição /boot .
  4. Teste que você pode inicializar a partir da nova partição. (Você pode excluir um kernel do antigo, deixando pelo menos um kernel que funcione e tentar inicializar a partir do kernel que corresponde ao deletado na nova partição para ter certeza de que está inicializando a partir da nova partição.)
  5. Limpe a antiga partição /boot limpa.
  6. Se necessário, ajuste novamente a configuração do carregador de boot para remover referências à antiga partição /boot do momento.
  7. Se desejar, adicione a partição /boot antiga ao grupo de volumes para poder usar seu espaço. Isso pode não valer a pena por apenas 113 MiB, mas é uma opção se você está desesperado para manter esse espaço em disco.

Como variante, se você não pretende adicionar a antiga partição /boot ao seu VG, você pode omitir tudo, desde a etapa 5 em diante. Isto lhe dará um local de backup onde você pode armazenar alguns kernels atuais caso algo ruim aconteça com a nova partição /boot .

    
por Rod Smith 07.04.2017 / 21:21