Reducir y eliminar volúmenes

Reducir un volumen

Los pasos son los mismos que para aumentar un volumen (extender el tamaño del grupo de volúmenes, luego el tamaño del volumen lógico a expandir y finalmente el tamaño del sistema de ficheros.) pero en orden inverso, aunque no es necesario reducir el grupo de volúmenes.

Al aumentar el volumen nos había quedado:

df -h
Filesystem            Size  Used Avail Use% Mounted on
....
....
/dev/mapper/grupo_1-volumen_l1
                      2.9G   36M  2.8G   2% /volumen_l1
....
....

Para poder reducirlo no debe estar montado, dado que de lo contrario da un error al intentar la ejecución, tal como se muestra a continuación:

resize2fs /dev/grupo_1/volumen_l1 1G
resize2fs 1.41.3 (12-Oct-2008)
Filesystem at /dev/grupo_1/volumen_l1 is mounted on /volumen_l1; on-line resizing required
On-line shrinking from 772096 to 262144 not supported.

Es muy recomendado hacer un chequeo del sistena de ficheros antes de reducirlo.

umount /dev/mapper/grupo_1-volumen_l1
e2fsck -f /dev/mapper/grupo_1-volumen_l1
e2fsck 1.41.3 (12-Oct-2008)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information

/dev/mapper/grupo_1-volumen_l1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/mapper/grupo_1-volumen_l1: 12/195840 files (0.0% non-contiguous), 21270/772096 blocks

resize2fs /dev/mapper/grupo_1-volumen_l1 1G
resize2fs 1.41.3 (12-Oct-2008)
Resizing the filesystem on /dev/mapper/grupo_1-volumen_l1 to 262144 (4k) blocks.
The filesystem on /dev/mapper/grupo_1-volumen_l1 is now 262144 blocks long.

Con los pasos anteriores se reduce el tamaño del sistema de archivos a 1GB. Dicha modificación puede constatarse volviendo a montar el sistema de ficheros, viendo que ahora el tamaño es de 1008M contra los 2.9G que mostraba antes.

mount /volumen_l1
df -h
Filesystem            Size  Used Avail Use% Mounted on
....
....
/dev/mapper/grupo_1-volumen_l1
                     1008M   35M  923M   4% /volumen_l1
....
....

cat /volumen_l1/archivo.txt
prueba

Hasta aquí sólo se redujo el sistema de ficheros y no se modificó nada del volumen lógico, por lo que es de suponer que el mismo se haya mantenido sin cambios. Se puede verificar esto mediante el siguiente comando:

lvdisplay /dev/grupo_1/volumen_l1 | grep Size
  LV Sie                2.95 GB

Para reducir efectivamente el volumen hay que indicarle con el comando lvreduce cuál será su nuevo tamaño. En este caso, 1GB.

lvreduce -L 1GB /dev/grupo_1/volumen_1
  WARNING: Reducing active and open logical volume to 1.00 GB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce storage? [y/n]: y
  Reducing logical volume volumen_l1 to 1.00 GB
  Logical volume volumen_l1 successfully resized

df -h
Filesystem            Size  Used Avail Use% Mounted on
....
....
/dev/mapper/grupo_1/volumen_l1
                     1008M   35M  923M   4% /volumen_l1
....
....

lvdisplay /dev/grupo_1/volumen_l1 | grep Size
  LV Size                1.00 GB

En este punto sí se ve claramente que se ha reducido tanto el tamaño del sistema de ficheros como el del volúmen. Faltaría asegurarse que los datos sigan estando bien. Para ello se puede ver que el contenido de “archivo.txt” sea legible.

cat /volumen_l1/archivo.txt
prueba

Obviamente, lo anterior no asegura que todo esté bien. El archivo se creó como una demostración de que los datos se mantienen, pero una medida más precisa implicaría tener un volumen más amplio de información, en lo posible cerca del límite del tamaño del filesystem.

Finalmente, con el siguiente comando se puede verificar que, si bien se redujo el sistema de ficheros y el volúmen lógico, el grupo de volúmenes sigue teniendo la misma dimensión, con la diferencia que en este caso tiene espacio libre que podrá ser asignado a un nuevo volumen. Esta información puede verse en las variables VG Size, Alloc Size, Free Size.

vgdisplay volumen_l1
  --- Volume group ---
  VG Name               volumen_l1
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               2.95 GB
  PE Size               4.00 MB
  Total PE              755
  Alloc PE / Size       256 / 1.00 GB
  Free  PE / Size       499 / 1.95 GB
  VG UUID               epQoNY-6JWP-1vUX-IZm0-LRwo-4fR4-AEEo1p

Eliminar volúmenes

Eliminar un volumen lógico

umount /volumen_l1/
lvremove /dev/grupo_1/volumen_l1
Do you really want to remove active logical volume "volumen_l1"? [y/n]: y
  Logical volume "volumen_l1" successfully removed

Eliminar un grupo de volúmenes

vgremove grupo_1
  Volume group "grupo_1" successfully removed

Eliminar un volumen físico

pvremove /dev/sdb
  Labels on physical volume "/dev/sdb" successfully wiped

« Linux | LVM2

Si no se indica lo contrario, el contenido de esta página se ofrece bajo Creative Commons Attribution-ShareAlike 3.0 License