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.