El particionado tradicional de discos (tal cual vimos en otra oportunidad) presenta el inconveniente de que el redimensionado de las particiones creadas acarrea ciertos riesgos y dificultades, siendo la pérdida o corrupción de datos uno de los peores casos. La solución a este problema reside en el uso de volúmenes lógicos.
¿Qué son los volúmenes lógicos?
Un volumen lógico es -a grandes rasgos- un dispositivo de almacenamiento que puede haber sido creado sobre la unión de discos enteros o particiones de los mismos mediante el administrador de volúmenes lógicos (LVM, por sus siglas en inglés). A diferencia del particionado tradicional, LVM nos provee la flexibilidad de redimensionar volúmenes lógicos fácilmente. Veamos un poco más en detalle de qué se trata el proceso.
La estructura de LVM consiste de los siguientes componentes:
- Dos (o más) discos rígidos o particiones sobre los que se crearán los volúmenes físicos (PV). En este post utilizaremos 3 discos de 8 GB (/dev/sdb, /dev/sdc, y /dev/sdd) para crear tres PVs. Es importante tener en cuenta que podemos crear cada PV sobre el disco directamente o particionarlo primero. Si elegimos la segunda opción, debemos indicar que la partición sea del tipo 8e (Linux LVM), tal como lo indicamos en Particiones y sistemas de archivos: la práctica. En esta oportunidad nosotros crearemos el PV sobre el disco entero sin particionar.
- Un grupo de volúmenes (VG) se crea a partir de uno o más volúmenes físicos. Por simplicidad, podemos considerar a un grupo de volúmenes como una unidad de almacenamiento (similar a un disco entero en el particionado tradicional).
- En cada grupo de volúmenes o LV (tal como lo indica su nombre) podemos crear varios volúmenes lógicos, los cuales pueden considerarse como análogos de las particiones tradicionales.
Crear volúmenes físicos
Para crear volúmenes físicos sobre los discos mencionados anteriormente, haremos lo siguiente:
[pastacode lang=»bash» manual=»pvcreate%20%2Fdev%2Fsdb%0Apvcreate%20%2Fdev%2Fsdc%0Apvcreate%20%2Fdev%2Fsdd» message=»» highlight=»» provider=»manual»/]
Deberíamos ver el siguiente mensaje de confirmación luego de ejecutar cada comando:
Physical volume "/dev/sdb" successfully created
El grupo de volúmenes
Ahora es momento de crear el grupo de volúmenes (lo llamaremos vg00). Solamente utilizaremos /dev/sdb y /dev/sdc por ahora para mostrar en el próximo post lo fácil que es extender un VG mediante LVM.
[pastacode lang=»bash» manual=»vgcreate%20vg00%20%2Fdev%2Fsdb%20%2Fdev%2Fsdc» message=»» highlight=»» provider=»manual»/]
El resultado debería ser similar al siguiente:
Volume group "vg00" successfully created
Tengamos en cuenta que el espacio de almacenamiento disponible en vg00 es ahora de 2 x 8 GB = 16 GB. Este hecho nos permite ver otra de las ventajas de LVM: podemos crear una unidad de almacenamiento de considerable capacidad utilizando discos o particiones de menor tamaño.
Nuestro primer volumen lógico
Para crear un primer LV de tamaño de 10 GB y llamado vol01 sobre vg00, debemos hacer lo siguiente (si omitimos -n vol01, el nombre del LV será asignado automáticamente por lvcreate):
[pastacode lang=»bash» manual=»lvcreate%20-n%20vol01%20-L%2010G%20vg00″ message=»» highlight=»» provider=»manual»/]
El resultado debería ser:
Logical volume "vol01" created.
En el siguiente post veremos cómo agregar espacio de almacenamiento a un grupo de volúmenes para extender nuestros LVs y cómo crear otro(s) con opciones adicionales. ¡Nos leemos en breve!
2 comentarios en «Volúmenes lógicos en Linux: Introducción»
Una consulta…blos grupos de volúmenes.. se pueden usar como discos en raid??
Alejandro,
En este link vas a encontrar el «formato» preferido para la interacción entre RAID y LVM. Espero que te sirva: https://debian-handbook.info/browse/es-ES/stable/advanced-administration.html#sect.raid-or-lvm