Como posso reduzir uma partição LVM no CentOS?

1

Estou tentando reduzir o tamanho de uma partição em uma VM do CentOS 5.8, já que meu antecessor alocou muito espaço para ela. No entanto, eu tentei uma variedade de métodos diferentes e tive problemas com todos eles. Os detalhes das partições atuais estão abaixo:

Model: VMware Virtual disk (scsi)
Disk /dev/sda: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number   Start   End    Size   Type      File system   Flags
1        32.3kB  107MB  107MB  primary   ext3          boot
2        107MB   215GB  215GB  primary                 lvm

Quando tento redimensionar a partição usando o Parted (executando um Knoppix Live-CD com a partição do sistema desmontada), recebo este erro:

(parted) resize 2 107 30827

WARNING: you are attempting to use parted to operate on (resize) a file system. parted's file system manipulation code is not as robust as what you'll find in dedicated, file-system-specific packages like e2fsprogs. We recommend you use parted only to manipulate partition tables, whenever possible. Support for performing most operations on most types of file systems will be removed in an upcoming release.
Error: Could not detect file system.

Eu tentei encontrar um bom guia sobre como fazer isso com e2fsprogs, mas tudo que eu encontrei não explica como redimensionar a partição lvm como eu preciso.

Sou novo no mundo do Linux, então talvez isso seja básico e estou analisando demais, mas qualquer ajuda seria muito apreciada.

Obrigado antecipadamente!

    
por Windows Ninja 27.06.2012 / 13:15

1 resposta

1

O sistema de arquivos crescente é fácil. Encolher o sistema de arquivos é mais complicado e não é suportado por todos os sistemas de arquivos. ext3 e ext4 suportam encolhimento, mas SEJA MUITO CUIDADO COM ELE . Tenha absoluta certeza de que você tem bons backups. Então, verifique mais uma vez se você tem bons backups.

Você deve primeiro reduzir o próprio sistema de arquivos com resize2fs /dev/yourdevice newsizegoeshere .

Em seguida, você precisa reduzir o volume lógico: lvresize -L X /path/to/your/logical_volume , em que X é o novo tamanho expresso de alguma forma. De propósito, deixei de fora a sintaxe, veja man lvresize das opções disponíveis para ver sua maneira preferida de informar o novo tamanho. Você pode subtrair do tamanho antigo ou apenas especificar o novo tamanho.

Em seguida, você precisará reduzir o próprio grupo de volumes com vgresize , se achar necessário. Alternativamente, você pode apenas criar novos volumes lógicos dentro do grupo de volume, agora que a etapa anterior com lvresize deu a você algum espaço para respirar.

Se você pegou a rota vgresize , você finalmente precisa ajustar o tamanho da partição com fdisk , excluindo a partição e recriando-a com exatamente o mesmo bloco inicial de antes e tornando o tamanho menor do que antes.

EDIT : Parece que com o encolhimento do grupo de volume LVM2 não é uma coisa trivial a se fazer. Você pode precisar excluir o grupo de volume e recriá-lo ... oh querido. Então, que tal minha nota de rodapé, funcionaria?

Se você e / ou o software falharem em alguma dessas etapas, seus dados ficarão boofs. Então, mais uma vez: CERTIFIQUE-SE DE QUE TENHA BONS BACKUPS .

Ah, e como o seu copy-paste menciona o VMware: você poderia simplesmente criar um novo disco virtual no VMware, copiar suas coisas do disco de tamanho grande para o novo disco, remover o disco de tamanho grande da órbita e chama por um dia?

    
por 27.06.2012 / 13:29

Tags