Mover espaço livre para fora do LVM

4

Eu tenho um contêiner LVM2 de 500 GB em um HD de 500 GB que contém uma partição raiz de 96 GB (ext4) e uma partição de swap de 4 GB. Fiz essa configuração usando o CD alternativo e defini a quantidade de espaço em disco a ser usada para 100 GB, presumindo que o restante ficaria disponível como espaço em disco normal e não criptografado.

Acontece que os 400 GB de espaço livre em disco são realmente encapsulados no container LVM2, como o Utilitário de Disco me mostra. Como faço para reduzir o contêiner LVM2 para que eu possa utilizar este 400 GB?

    
por Cumulus007 20.07.2012 / 00:02

2 respostas

4

Resposta simples - você não pode. (Mas você pode querer fazer outra coisa para conseguir o que quer - veja abaixo)

O LVM2 possui 3 'níveis', os Volumes Físicos (que é o que eu suponho que você esteja se referindo como um contêiner LVM2), Grupos de Volumes e Volumes Lógicos.

Geralmente você define uma ou mais partições para serem Volumes Físicos para LVM2. Uma vez feito isso, a partição não pode ser usada para mais nada (da mesma forma que uma partição só pode ser usada para um sistema de arquivos).

Por exemplo:

# pvcreate /dev/sdb3

Você cria um novo grupo de volume ou adiciona o volume físico a um grupo existente

# vgcreate MyVolGroup /dev/sdb3

ou

# vgextend MyVolGroup /dev/sdb3

Você cria o Volume Lógico, que na verdade é usado para um sistema de arquivos.

# lvcreate -L100G --name MyVolume MyVolGroup

Os Volumes Lógicos podem ser redimensionados sem perder dados, embora não seja trival. Mas os tamanhos dos Volumes Físicos são fixos como os tamanhos das partições.

Se você realmente deseja usar seu espaço de 400Gb que já está alocado para um Volume Físico (contêiner LVM2), a resposta é criar outro Volume Lógico e usá-lo.

Para localizar o nome do Grupo de Volume (se você ainda não o conhece), use o comando vgs .

# lvcreate -L400G --name MySpace VolGroup
# mkfs -text4 /dev/VolGroup/MySpace
# mount /dev/VolGroup/MySpace /mnt

A alternativa mais avançada, se você tiver espaço livre suficiente para criar uma nova partição, é forçar o Volume Lógico existente a ser movido (usando pvmove ) para liberar o Volume Físico de 500 Gb ( vgreduce e pvremove comandos) e, em seguida, criar um contêiner menor e mover os dados de volta novamente, mas provavelmente há pouca vantagem sobre o simples uso de Volumes Lógicos para tudo.

    
por StarNamer 20.07.2012 / 00:37
2

Você não especificou por que você quer encolher a partição LVM, então é possível que você queira apenas criar novos volumes lógicos dentro do container LVM. Se você tiver certeza de que realmente deseja reduzir o tamanho do contêiner LVM, poderá usar pvresize para reduzir o tamanho do Volume Físico e, em seguida, particionar ferramentas como fdisk ou parted para reduzir o tamanho da partição do disco que contém o volume físico. Você precisa se certificar de que está usando unidades de setores ao particionar (em parted, o comando unit s fará isso). Você precisará excluir a partição e recriá-la com o mesmo setor inicial, mas com um tamanho menor. Se você especificar o tamanho para pvresize em GB, precisará converter em setores multiplicando por 1024 * 1024 * 2 e arredondar por segurança, ou seja, adicionar GB extra. Você precisará reinicializar para que as alterações na tabela de partição entrem em vigor e, em seguida, você poderá usar pvresize novamente sem um argumento de tamanho para expandi-lo novamente até o tamanho máximo que a nova partição mantém. Você terá então espaço não particionado para fazer o que quiser.

    
por psusi 20.07.2012 / 03:21

Tags