Para explicar cómo expandir un Logical Volume, hemos utilizado una (1) VM corriendo en VirtualBox.
Discos duros:
/dev/sda con 19GB
/dev/sdb con 8GB
El objetivo del laboratorio es expandir el espacio que contiene el Logical Volume (LV) “root” que se encuentra en el Volume Group (VG) “centos”.
[1] Ejecutamos el comando fdisk -l para visualizar los discos duros y sus particiones que tiene instalado la VM:
#fdisk -l

En la imagen tenemos un disco denominado /dev/sda con aproximadamente 20 GB de espacio dividido en dos particiones:
/dev/sda1 (Linux)
/dev/sda2 (Linux LVM)
También podemos observar que tenemos un segundo disco /dev/sdb, en este caso sin particiones.
[2] Ejecutamos los comandos #pvs, #vgs, #lvs para visualizar los Physical Volume (PV), Volume Group (VG) y Logical volume (LV) configurados en CentOS.
#pvs
#vgs
#lvs

La salida del comando pvs muestra que la VM tiene (1) PV /dev/sda2 con 19 GB; (1) VG denominado centos con 19 GB y (2) LV, root con 17 GB y swap con 2 Gb.
[3] Ejecutamos el comando #df -h para determinar cuáles rutas (path) o mount point son utilizados para acceder a los LV a través del sistema de archivo.
#df -h

La salida del comando #df -h muestra que el (LV) root identificado en el sistema de archivo como /dev/mapper/centos-root está montado en la ruta “/”. El tamaño del LV root es 17 GB; 4.3 GB están siendo utilizados y 13GB están libres.
Primero, expandiremos el tamaño del VG centos adicionando (1) PV. Luego de expandir el VG, entonces, expandimos el LV root.
[4] Ejecutamos el comando #fdisk /dev/sdb para crear las particiones necesarias.
#fdisk /dev/sdb

[a] La opción P lista las particiones creadas en el disco. Este caso no hay particiones creadas.
[b] La opción N crea una nueva partición.
[c] La opción P designa a la nueva partición creada como Primaria (Primary).
[d] Luego asignamos el valor 1 a la partición creada.
[e] Seleccionamos P nuevamente para visualizar en pantalla la nueva partición creada. Podemos ver que se ha creado una partición /dev/sdb1 con el tipo de sistema de archivo Linux.
[f] Seleccionando la opción t cambiamos el tipo de sistema de archivo sobre una partición. En este caso, escogemos la opción 8e (Linux LVM).
[h] La opción w permite grabar los cambios realizados.

[5] El comando #pvs muestra que nuestro sistema LVM solo cuenta con (1) Physical Volume (PV) /dev/sda2 con espacio de 19 GB.
#pvs
Ejecutamos el comando #pvcreate /dev/sdb1 para convertir la partición /dev/sdb1 en un Physical Volume (PV) dentro del sistema LVM.
#pvcreate /dev/sdb1

[6] Ejecutamos el comando #vgs para listar los Volume Group (VG) configurados en el sistema. Podemos ver que el VG centos tiene asignado (1) Physical Volume (PV)
#vgs
Con el comando #vgextend /dev/centos /dev/sdb1 ampliamos el tamaño del Volume Group (VG) adicionando el PV /dev/sdb1.
#vgextend /dev/centos /dev/sdb1

Fíjate que luego ejecutamos nuevamente #vgs y podemos comprobar que el Volume Group (VG) centos contiene ahora (2) Physical volume (PV) con un tamaño de 26 GB, de los cuales 8 GB están libres.
[7] El comando #pvscan muestra información más completa sobre la relación existente entre PH, VG y LV.
#pvscan

[8] Ejecutamos el comando #vgdisplay para obtener una información necesaria para poder expandir el Logical Volume (LV) root luego de expandir el espacio disponible en el Volume Group (VG) centos.
#vgdisplay

Tomamos el valor Free PE / size, en este caso (2047), para utilizarlo en el próximo comando.
[9] Extendemos el Logical Volume (LV) con el comando lvextend.
#lvextend -l +2047 /dev/centos/root

[10] Extendemos el sistema de archivo con el comando xfs_growfs
#xfs_growfs /dev/centos/root
Si el filesystem es ext4 utilizamos el siguiente comando:
#resize2fs /dev/centos/root

[11] Ejecutamos el comando #df -h para comprobar el sistema de archivo refleje el tamaño real del Logical Volume (LV)

Como muesta la imagen, el LV /dev/mapper/centos-root tiene ahora un tamaño de 25 Gb.