Aumentando a partição / boot encolhendo o volume lógico do ubuntu-vg

2

Estou cansado de limpar / inicializar para liberar espaço suficiente toda vez que um novo kernel é lançado. Eu tenho seguido as instruções abaixo para diminuir / dev / ubuntu-vg para liberar espaço para aumentar o tamanho de / boot.

Como você pode redimensionar uma partição LVM? (isto é, volume físico)

Executando sudo pvs -v --segments /dev/sda5 yields:

PV VG Fmt Attr PSize PFree Start SSize LV Start Type PE Ranges       
/dev/sda5 ubuntu-vg lvm2 a-- 111.55g 8.55g 0 26368 root 0 linear /dev/sda5:0-26367
/dev/sda5 ubuntu-vg lvm2 a-- 111.55g 8.55g 26368 2188 0 free 

Tudo parece funcionar até eu chegar:

sudo pvmove --alloc anywhere /dev/sda5:yyyy-end

Gostaria de liberar ~ 500 MB para adicionar a /boot . (Eu apaguei minha partição de swap quando tive problemas pensando que isso forneceria mais memória para permitir a mudança (que eu planejo adicionar mais tarde)). Como o endereço de memória mais alto está livre (o lado direito está vazio), tentei aumentar o tamanho de /dev/sda1 (ou seja, ext2 / root). No entanto, o GParted, o KDE Partition Manager, ou o Logical Volume Management permitirão que eu faça isso (não é possível especificar um tamanho maior).

Perguntas:

  1. Se /dev/sda1 ( /boot ) for listado primeiro e o Ubuntu-vg ( /dev/sda2 , ou seja, /root ) estiver listado em segundo lugar, o espaço livre precisa estar no lado esquerdo ou direito do Ubuntu -vg para permitir que /dev/sda1 ( /boot ) seja estendido? Ou seja, como todo o espaço não utilizado já está no lado direito, por que não posso simplesmente estender /dev/sda1 ( /boot )?
  2. O ubuntu-vg precisa ser redimensionado para não incluir o espaço não utilizado?
  3. No meu caso, o Ubuntu-vg tem espaço não utilizado no lado direito. Preciso encolher o Ubuntu-vg para que o “Unused Space” não seja incluído no Ubuntu-vg?
  4. Se o espaço livre deve estar no lado esquerdo (em vez de direito), já que eu só tenho um volume de dados restante ( /dev/sda5:0-26367 ), eu esperaria poder movê-lo para qualquer lugar dentro do volume. Eu tentei várias versões de sudo pvmove -v --alloc anywhere , mas continuo recebendo "Espaço livre insuficiente: aaa extensões necessárias, mas apenas bbb disponível".

    Por exemplo, sudo pvmove -v --alloc anywhere /dev/sda5:0+26368 /dev/sda5:128+26368 Por que estou obtendo “espaço insuficiente” quando estou apenas mudando um intervalo de memória para outro intervalo de memória disponível?

por user2514157 30.08.2017 / 09:35

1 resposta

2

Minha recomendação é que NÃO tente mover o PV. Em vez disso, tente isto:

  1. Reduza o PV pelo valor desejado para que a partição /boot seja no total . Ou seja, se você deseja uma partição/boot de 1 GB%, reduza seu PV em 1 GB.
  2. Crie uma nova partição de 1GB /boot no espaço liberado e crie o sistema de arquivos que deseja usar nela.
  3. Copie os arquivos atuais da partição /boot para a nova partição
  4. Ajuste a configuração do carregador de boot para a nova partição (isso pode implicar a reinstalação do seu gerenciador de inicialização ou apenas o ajuste dos arquivos de configuração).
  5. Teste tudo, certificando-se de que tudo funciona com a nova partição /boot . Isso deixará você com algum espaço desperdiçado onde sua antiga partição /boot é; mas isso é facilmente corrigido ...
  6. Marque a antiga partição /boot como um novo PV (ou seja, altere seu código de tipo de partição).
  7. Execute pvcreate na nova partição PV / ex /boot .
  8. Execute vgextend para estender o VG para incluir a nova partição PV / ex /boot .
  9. Se desejar, expanda um ou mais LVs para usar o espaço extra.

Este processo será muito mais rápido e seguro do que tentar mover seu PV principal para abrir espaço para uma partição /boot expandida. A desvantagem, é claro, é que o PV será fragmentado, o que degradará um pouco o desempenho dos arquivos que podem ser armazenados na antiga partição /boot . Dito isso, a quantidade de espaço é pequena, portanto, o número de arquivos afetados provavelmente será pequeno. Se o disco for um SSD, esse efeito será inexistente.

Note também que a pequena quantidade de espaço que você recuperaria argumenta em favor de simplesmente parar na etapa 5 no procedimento acima, ou talvez em vez disso apagar ou apagar a antiga partição /boot . Isso o tornará disponível para uso futuro, caso isso se torne desejável. Por exemplo, se você deseja instalar uma segunda distribuição Linux no computador ou testar a próxima versão do Ubuntu antes de atualizar, você pode usar a antiga partição /boot como uma partição /boot para a nova instalação, em paralelo com a principal. .

    
por Rod Smith 30.08.2017 / 15:34