Dica rápida: Se você usa o tanto que virtualização que eu uso já deve ter dado de cara com esse problema: Você cria uma máquina virtual com um disco de x GB e quando vai mandar pra produção alguém pede mais espaço em disco.
Uma opção é adicionar outro disco virtual e juntar no seu logical volume do LVM, mas já que o VMware te dá a possibilidade de redimensionar o disco, porquê não usar essa opção?
Aumente o disco como desejado pelo VMware, boot sua máquina virtual siga os passos abaixo (como root):
Re-scaneie seu disco:
echo "1" > /sys/class/scsi_device/<device>/device/rescan
Recrie a partição:
Usando o fdisk delete a partição LVM e crie-a novamente. O cilindro inicial deve manter-se o mesmo e apenas aceite o default para o cilindro final. Não se esqueça que o fdisk cria as partições como Linux (83) por default. Se estiver usando LVM mude para Linux LVM (8e).
Redimensione o Physical Volume:
pvresize -v /dev/<particao>
Redimensione o Logical Volume:
lvextend -L +<size>G /dev/<volume_group>/<volume>
Redimensione o filesystem:
EXT2/EXT3:
resize2fs /dev/<volume_group>/<volume>
ReiserFS:
resize_reiserfs -f /dev/<volume_group>/<volume>
Aproveitando seu post.
Para redimensionar o filesystem quando for XFS:
xfs_growfs /
Nao crie os volumes da máquina virtual com LVM, e principalmente não particione os discos virtuais (secundários).
Sem particionar, tu nao precisará nem rebootar a VM para executar o resize. Se há tabela de partições num disco, tu terá que desmontar o filesystem para que o kernel releia a tabela.
volume 20gb:
mke2fs -j /dev/sdb
mount /dev/sdb /mnt/volume
— redimensionar no vmware/xen —
— fazer rescan no vmware — xen nao precisa —
echo “1” > /sys/class/scsi_device//device/rescan
resize2fs /dev/sdb
fim – 0 downtime e disco redimensionado.
Me pareceu um pouquinho complicado. Acho que não sou nada geek.