Ubuntu: redimensione a partição raiz do LVM (2?)


10

Eu tenho uma máquina virtual Ubuntu rodando no VirtualBox 2.2.4 e a criei em um disco virtual de 8 GB, que é muito pequeno.

Então, eu estou tentando aumentar o tamanho do disco. Até agora, eu fiz isso:

  1. Criou um novo disco virtual maior
  2. Adicionado o 2º disco à máquina
  3. Utilizou o CloneZilla para clonar o primeiro disco no 2º disco
  4. Removido o primeiro disco
  5. Inicializado a partir do 2º (disco maior)

Mas agora eu ainda estou preso com uma partição de 8 GB no meu novo disco virtual de 100 GB.

Qual é o caminho mais fácil daqui para ter uma partição de 100gb? :) Acho que o GPart pode redimensionar partições, mas não parece suportar partições LVM2, o que parece ser o meu.

valeu

  • Alex

Respostas:


5

Em geral, veja como redimensionar volumes LVM:

Digamos que /mountpointestá ligado /dev/VolGroup00/mountpoint. Você pode descobrir isso fazendo check-out /etc/fstabou executando mount -l.

Também pode ser necessário redimensionar o volume físico real, dependendo da sua configuração. Use pvdisplaypara descobrir se é grande o suficiente e use pvresize(como lvresizeabaixo), se necessário.

umount /mountpoint
lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
e2fsck -f /dev/VolGroup00/mountpoint
resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
mount /mountpoint

Isso equivale a desmontagem, redimensionamento do LVM subjacente e redimensionamento da partição ext3 real.

Algumas coisas para ter cuidado:

  1. Obviamente, brincar com /será diferente de uma partição de dados. Você pode precisar de um disco de inicialização, como o Sysrescuecd, em vez de o Doing Live. Veja também o comentário de Kristof abaixo - você pode realmente fazer isso sem desmontar /.
  2. O lvresize possui algumas opções de sintaxe diferentes e a redução de um volume lógico provavelmente prejudicará a partição de sobreposição. Consulte as páginas de manual locais para obter mais informações.

Obrigado, que parece promissor, você pode sugerir um LiveCD que eu possa usar com ferramentas LVM?
— User12259 09/07/2009

Sysrescuecd é bom ( sysresccd.org )
— Zoredache

5
O ext2 / 3/4 suporta o crescimento ao vivo do seu sistema de arquivos. Você não precisa desmontar ou e2fsck suas partições. O resize2fs também é inteligente o suficiente para descobrir o tamanho da partição (ou volume lógico) em que está. Se você não especificar um tamanho, ele aumentará para preencher todo o espaço disponível.
— 9190 Kristof Provost

Eu tentei "sudo resize2fs / dev / sda1" e respondeu: "resize2fs: Dispositivo ou recurso ocupado ao tentar caneta / dev / sda1 Não foi possível encontrar superbloco do sistema de arquivos válido"
— user12259

1
lvresize não altera o tamanho do volume físico, então não preciso fazer isso primeiro?
— User12259

2

Havia uma (e apenas uma) maneira de encontrar isso e tentei uma miríade.

Primeiro, clone a VM convidada do ubuntu na caixa virtual clicando com o botão direito do mouse e indo em "clonar". Após a conclusão do clone, estenda o vdi clonado usando (No SO host)

VBoxManage modifyhd "name_of_cloned_vdi" - redimensionar "size_of_new_root_partition_in_MB"

Então - siga as etapas deste post à letra (ele se refere ao VMware como uma plataforma, mas ignore isso)

http://blog.campodoro.org/?p=36

Isso criará outro lvm exatamente equivalente em tamanho ao espaço extra que você adicionou e amarrará ao final do existente.

Depois de verificar se tudo está bom, você pode excluir a VM original e promover seu clone!

Não há necessidade de mexer com o fdisk e se preocupar em excluir ou estragar a partição errada.

Eu devo ter quebrado cerca de 4 sistemas operacionais clonados até encontrar essa solução!


2

Eu apenas fiz isso e tinha a mesma pergunta que você tinha, mas em vez de criar um novo LVM e adicioná-lo ao grupo de volume, o lado OCD de mim queria redimensionar minha LVM atual e, assim, manter uma única partição em nome da simplicidade. Nota: Não acredito que isso seja possível se o espaço livre não seguir imediatamente a partição que você está redimensionando!

Para fazer isso, você precisará de uma ferramenta que possa excluir e criar tabelas de partição. Desde que eu uso GPT, isso significava que eu precisava do gdisk . Você também precisará fazer isso com a partição desmontada, para poder inicializar em um Ubuntu LiveCD e executá-lo a partir daí.

As etapas a seguir em negrito são, por exemplo, LVM / dev / mms / root no dispositivo / dev / sda , em que eu queria expandir a partição / dev / sda3 para ocupar meu novo espaço livre.

NOTA : Estes são potencialmente muito destrutivos, portanto, verifique se suas entradas estão corretas!

  1. gdisk / dev / sda (certifique-se de inserir o dispositivo correto!) Isso o leva ao gdisk, onde você pode executar as seguintes etapas para
    1. p - imprime as informações atuais da partição (para referência)
    2. d - para excluir uma tabela de partição
    3. 3 - o número do dispositivo que representa a tabela de partição que você deseja excluir (importante!)
    4. n - para criar uma tabela de partição
    5. 3 - o número do dispositivo que representa a tabela de partição que você deseja criar (você provavelmente desejará usar o mesmo que excluiu na etapa 3)
    6. p - imprime as informações atuais da partição (novamente para referência, compare-a com o que você começou!)
    7. w - salva suas alterações no disco (você tem certeza ?!)
  2. pvresize / dev / sda3 - pode ser necessário reiniciar antes de fazer isso para que o sistema operacional reconheça o novo tamanho da partição
  3. pvdisplay - imprime suas informações atuais (deve mostrar que está usando todo o espaço agora!)
  4. lvresize -l + 100% GRÁTIS / dev / mms / root - redimensiona meu LVM para ocupar 100% do meu espaço recém-descoberto
  5. e2fsck -f / dev / mms / root - executa uma verificação de integridade
  6. resize2fs -p / dev / mms / root - redimensiona o sistema de arquivos para ocupar seu LVM completo

Depois de fazer o acima e reiniciar no sistema operacional redimensionado, tudo funcionou como esperado e eu tinha todo o meu espaço livre adicional à minha disposição!

Referências adicionais que eu usei para descobrir tudo isso:

http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html


1

Veja uma resposta relacionada aqui.

(excerto)

Redimensionando o volume físico:

pvresize --verbose --test /dev/md0

Redimensionando o volume lógico:

lvresize --verbose -L <SIZE> --test /dev/VG1/LV1

E, finalmente, redimensionando o ext3 FS:

resize2fs /dev/VG1/LV1

Quando eu faço lvresize, eu recebo um erro "Falha ao suspender root"
— user12259

Eu tentei: "sudo lvresize --verbose -L 40G / dev / ubuntu / root"
— user12259 09/07/09

ok, eu fixo que, com "sudo modprobe dm-mod", agora eu posso com sucesso lvresize
— user12259

fdisk -lmostra que tenho 54 GB disponíveis, mas após a execução pvresize /dev/sda2; lvresize -L 50G /dev/mapper/VolGroup-lv_root, recebo o erro "Espaço livre insuficiente: são necessárias 588 extensões, mas apenas 0 disponíveis". pvdisplaymostra que meu volume físico não foi redimensionado.
— Cerin

Você realmente deve fazer uma nova pergunta. Os comentários de uma pergunta antiga não são a melhor maneira de obter ajuda.
— Zoredache

1

Observe que você realmente não precisa usar uma ferramenta de clone como o CloneZilla aqui, você pode colocar uma partição no novo disco virtual (opcional) e inicializar esse (ou o próprio disco virtual) no LVM usando o pvcreatecomando Em seguida, use vgextendpara adicionar isso ao grupo de volumes que suporta o seu volume lógico e, em seguida, use vgreducepara remover o disco virtual original do grupo de volumes. Isso executará uma migração e poderá ser feito ao vivo enquanto o volume lógico estiver em uso; essa é a beleza da virtualização de armazenamento. Quando terminar, você só precisa estender o volume lógico como acima, o que também pode ser feito ao vivo com sistemas de arquivos mais modernos que o ext3.


1

I. Se o seu HDD virtual tiver um tamanho fixo, você não poderá aumentá-lo. Nesse caso, você deve cloná-lo primeiro.

(1) Clone o HDD pela GUI do VB: File -> Virtual Media Manager... -> [tab] Hard Drives -> select your HDD -> [button] Next -> [button] Next -> select "Dynamically allocated" on the step "Storage on physical hard drive"-> ...

ou na linha de comando:

# VBoxManage clonehd "/path/to/the/HDD.vdi" "/path/to/the/HDD_NEW.vdi"

(2) Adicione o novo HDD à lista dos HDDs conhecidos.

(3) Nas configurações da máquina VB, remova o disco rígido antigo da lista VDI, no Controlador, e adicione o novo.

II Redimensionar o HDD

(1) Redimensione o novo disco rígido.

# VBoxManage modifyhd 463c7bd4-9b9c-4cf8-bee4-e14e10c0d462 --resize 25600

Você recebe a chave com o VBoxManage list hddscomando

III Adicione novo espaço alocado.

(1) Adicione um ISO GParted como novo meio abaixo Machine Settings -> Storage -> [rightclick] Controller IDE -> Add CD / DVD Device -> ...e marque a Live CD/DVDcaixa de seleção.

(2) Inicie a VM e adicione o espaço livre não alocado à sua partição de trabalho.

(3) Pare a VM.

(4) Desconecte o ISO GParted.

Apreciar! :)



Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.