Se encuentra usted aquí

Extender un volumen LVM

En el sistema LVM, hay varios niveles:

PV[s] (Physical Volumes) -> VG[s] (Volume Groups) -> LV[s] (Logical Volumes) -> Sistema de Ficheros.


Los volúmenes lógicos se extienden dentro de los grupos, esto nos permite añadir un disco duro a un grupo añadiendo espacio.



Voy a poner el espacio antes:

# df -h
S.ficheros           Tamaño Usado  Disp Uso% Montado en
/dev/mapper/linvx-root   2,4G  953M  1,3G  43% /
udev                   241M   12K  241M   1% /dev
tmpfs                   99M  248K   99M   1% /run
none                   5,0M     0  5,0M   0% /run/lock
none                   246M     0  246M   0% /run/shm
/dev/sda1              228M   60M  157M  28% /boot

Veamos el grupo linvx:

Comando corto:

# vgs
  VG   #PV #LV #SN Attr   VSize VFree
  linvx    2   2   0 wz--n- 4,75g 2,24g

Comando largo:

# vgdisplay
  --- Volume group ---
  VG Name               linvx
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               4,75 GiB
  PE Size               4,00 MiB
  Total PE              1216
  Alloc PE / Size       642 / 2,51 GiB
  Free  PE / Size       574 / 2,24 GiB
  VG UUID               jPmS28-6FUq-K5lt-fEuh-Jiul-wsrx-sPev3G

He marcado en negrita el espacio libre, tengo espacio libre dado que he hecho antes algunas operaciones que voy a explicar más adelante.

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               linvx
  PV Size               1,76 GiB / not usable 2,00 MiB
  Allocatable           yes (but full)
  PE Size               4,00 MiB
  Total PE              450
  Free PE               0
  Allocated PE          450
  PV UUID               jiYf36-TCCD-1ZOA-GuZd-bIo7-2tbs-8RHGk7

Vamos a extender el volumen

Podemos hacerlo de dos formas, añadiendo un disco duro o si estamos dentro de una máquina virtual añadiendo espacio al disco de la unidad virtual.

  1. Añadiendo un disco duro
    pvcreate /dev/sdb
    vgextend linvx /dev/sdb
    
  2. Añadiendo espacio al disco duro virtual
    cfdisk /dev/sda
    

    Creamos una partición nueva lógica, por ejemplo la partición /dev/sda6, y la ponemos del tipo 8E (Linux LVM), una vez guardada es neceario reiniciar.

    pvcreate /dev/sda6
    vgextend linvx /dev/sda6
    

Ahora extendemos el volumen lógico.

# lvextend -L+2G /dev/linvx/root
  Extending logical volume root to 4,37 GiB
  Logical volume root successfully resized

Voy a ver si me queda espacio:

# pvs
  PV         VG   Fmt  Attr PSize PFree
  /dev/sda5  linvx  lvm2 a-   1,76g      0
  /dev/sda6  linvx  lvm2 a-   2,99g 248,00m

Añado 248m

lvextend -L+248m /dev/linvx/root
  Extending logical volume root to 4,61 GiB
  Logical volume root successfully resized

Ahora nos queda extender el sistema de ficheros, lo hacemos de la siguiente manera:

resize2fs /dev/linvx/root
resize2fs 1.42 (29-Nov-2011)
Filesystem at /dev/linvx/root is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/linvx/root to 1208320 (4k) blocks.
The filesystem on /dev/linvx/root is now 1208320 blocks long.

El espacio final:

# df -h
S.ficheros           Tamaño Usado  Disp Uso% Montado en
/dev/mapper/linvx-root   4,6G  954M  3,4G  22% /
udev                   241M   12K  241M   1% /dev
tmpfs                   99M  248K   99M   1% /run
none                   5,0M     0  5,0M   0% /run/lock
none                   246M     0  246M   0% /run/shm
/dev/sda1              228M   60M  157M  28% /boot

Y ahora al ejecutar pvdisplay:

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               linvx
  PV Size               1,76 GiB / not usable 2,00 MiB
  Allocatable           yes (but full)
  PE Size               4,00 MiB
  Total PE              450
  Free PE               0
  Allocated PE          450
  PV UUID               jiYf36-TCCD-1ZOA-GuZd-bIo7-2tbs-8RHGk7

  --- Physical volume ---
  PV Name               /dev/sda6
  VG Name               linvx
  PV Size               3,00 GiB / not usable 3,41 MiB
  Allocatable           yes (but full)
  PE Size               4,00 MiB
  Total PE              766
  Free PE               0
  Allocated PE          766
  PV UUID               DkOk73-Q7GP-xXxK-tA0r-lzZA-fPlj-uJjfIa

Para terminar, el pvdisplay también tiene comando corto:

# pvs
  PV         VG   Fmt  Attr PSize PFree
  /dev/sda5  linvx  lvm2 a-   1,76g    0
  /dev/sda6  linvx  lvm2 a-   2,99g    0