Uno de los mayores dilemas de los recién iniciados en Linux, es la gestión de las particiones a la hora de realizar una instalación desde 0... Mucha gente opta por el particionado guiado en el que te particiona todo automáticamente en una única partición y únicamente configura una partición extra para la memoria swap que, dependiendo de la memoria RAM que tengamos en el equipo, será mayor o menor... Generalmente dicha configuración es perfectamente válida para la gran mayoría de usuarios, tengan el nivel que tengan, pero a veces dicha configuración no es la deseada, ya sea porque quieren separar la carpeta home en otra partición para futuras actualizaciones/re-instalaciones (recomendable) o bien porque necesitan aislar algunos recursos en otra partición por el motivo que sea...
El particionado manual puede llegar a ser muy eficiente, pero uno de sus mayores "defectos" es que al dejar todo en manos del usuario final, deja la gestión del disco en manos del factor humano, con sus correspondientes consecuencias... Una mala gestión de las particiones puede hacer que por ejemplo, particiones importantes, tengan demasiado poco espacio libre, haciendo que el funcionamiento de estas sea deficiente o que incluso por accidente acaben colapsadas... Es por ello que a veces es necesario redimensionarlas. Para ello existen dos opciones: La primera sería recurrir a una herramienta de terceros como G-Parted; la cual generalmente resuelve esos problemas, pero que a veces, por un motivo u otro, deja la partición corrupta; la otra opción sería el tener configurado LVM en los discos...
LVM permite redimensionar las particiones a placer sin tener que recurrir a G-Parted u otras herramientas, además de que permite añadir nuevas particiones sin conflicto alguno, con lo que es una opción muy a tener en cuenta a la hora de instalar un sistema desde 0. Aún así, supongamos que hemos añadido un nuevo disco duro a nuestro sistema y queremos que éste también tenga LVM... ¿Cómo lo haríamos?
Lo primero y 100% necesario, sería tener instalado, obviamente, el paquete LVM en el sistema; cosa tan sencilla como realizar:
apt-get install lvm2
Tras la instalación, hemos de tener en cuenta que todas las particiones que manipulemos de aquí en adelante, DEBEN de estar desmontadas, así que es muy importante ser muy cuidadosos en dicho aspecto. Además también daré por hecho que ya conocéis cómo añadir un disco duro "normal" al sistema... En caso de no conocer dicho procedimiento os recomiendo que leáis este artículo, en el que ya expliqué los pasos a seguir para lograr dicho fin. Con todo preparado, tendríamos un escenario parecido a este:
Con el disco duro preparado, lo primero que haríamos sería iniciar el disco duro nuevo (/dev/sdb1) como un volumen físico, lo cual es tan sencillo lograremos mediante el comando pvcreate tal que así:
pvcreate /dev/sdb1
Con el volumen físico creado, ahora crearíamos un grupo de volúmenes, pues éstos están compuestos por volúmenes físicos (uno o varios). En este caso el grupo de volúmenes estaría compuesto únicamente por /dev/sdb1 así que haríamos lo siguiente:
vgcreate mi_grupo /dev/sdb1
El nombre mi_grupo sería el nombre del grupo de volumenes, mientras que /dev/sdb1 sería volumen físico que formaría parte del grupo de volumenes. En caso de querer añadir más de un volumen físico, únicamente tendríamos que poner el nombre de cada uno de estos por separado (por ejemplo vgcreate mi_grupo /dev/sdb1 /dev/sdb2).
Esto que hemos hecho ahora no sería suficiente, ahora tenemos el disco preparado para crear diferentes volúmenes lógicos (lo equivalente a una partición "normal), que es lo que LVM es capaz de reconocer. Esta creación se realizaría gracias a lvcreate que tendría la estructura:
lvcreate -L tamaño -n nombre_volumen $nombre_grupovolumenes
En este caso en concreto he creado 3 volúmenes lógicos: volumen1, volumen2 y volumen3; Un volumen sería de 10 megabytes, otro de 20 megabytes y otro de 5 gigabytes. Los tamaños quedarían representadas como B (bytes) K (Kilobytes) M (Megabytes) y G (Gigabytes).
- lvcreate -L 10M -n volumen1 mi_grupo
- lvcreate -L 20M -n volumen2 mi_grupo
- lvcreate -L 5G -n volumen3 mi_grupo
Con esto ya tendríamos todo listo... Obviamente más de uno se preguntará: ¿Bien, y ahora qué? ¿En qué me ha beneficiado todo esto? Tal y como decía antes, la gran ventaja que ofrece LVM es el redimensionamiento de las particiones (en este caso volúmenes) que puede realizar sin necesidad de herramientas de terceros... Esta redimensión se haría mediante el comando lvresize que tiene la estructura:
lvresize -L $tamaño /dev/$grupo_volúmenes/$nombre_volúmen
Por ejemplo para hacer que el volumen volumen2 sea de 2 gigabytes, haríamos:
lvresize -L 2G /dev/mi_grupo/volumen2
Fácil, rápido y sencillo. Como podéis ver, si bien el hecho de configurar LVM lleva algo de tiempo y esfuerzo; las ventajas que ofrece son obvias, mientras que el particionado tradicional la única ventaja que ofrece es su facilidad de implantación, con lo que podemos considerar esta configuración como un esfuerzo que merecerá la pena en términos de flexibilidad y fiabilidad a largo plazo.
Espero que os haya resultado útil.
Saludos.