para maximizar el valor de tu empresa
Máxima fiabilidad, alto rendimiento
Cómo extender particiones en Linux
En este tutorial, vamos a explicar cómo cambiar el tamaño de las particiones de un disco duro en Linux utilizando un comando muy útil. Fácilmente, con este comando, podréis modificar los tamaños de las particiones, tanto la partición de root como cualquier otra partición. No es necesario pasar al modo rescate o mantenimiento ni reiniciar el servidor. Contemplaremos su uso en particiones ext4 y XFS. Se trata del comando growpart con el que haremos multitud de tareas de mantenimiento de sistemas en este tutorial.
Tabla de contenidos
- 1 Comando growpart:
- 2 Cómo extender la partición de root usando LVM en Linux
- 2.1 1. Comprobamos el estado del disco y su estructura
- 2.2 2: Extender el tamaño de disco deseado (partición de root u otra)
- 2.3 3: Redimensionado del volumen lógico de root para ocupar todo el espacio
- 2.4 4: Actualización de los cambios en el filesystem (si no hemos usado la opción -r en el punto 3)
- 2.5 Posts relacionados
Comando growpart:
growpart es una herramienta de linea de comando de Linux utilizada para extender una partición con el objetivo de utilizar el espacio disponible en el disco. Este comando viene incluido como parte de un paquete que podemos descargar desde los repositorios de la distribución que estemos utilizando.
Cómo instalar en el sistema el paquete cloud utils
En sistemas Ubuntu y Debian, ejecutad el siguiente comando para instalar la herramienta growpart.
$sudo apt install cloud-guest-utils
Para CentOS ejecutar:
$sudo yum -y install cloud-utils-growpart
Añadiendo al final del comando el parámetro -h podemos visualizar la página de ayuda
Ya estamos listos para extender nuestra partición de root.
El primer paso, comenzamos el tutorial según la estructura LVM en la partición de root:
Cómo extender la partición de root usando LVM en Linux
Para mostrar un proceso completo de LVM, vamos a realizar las siguientes tareas:
- Creación de un volumen físico, un volumen lógico y un grupo de volúmenes de LVM
- Creación de una partición XFS y ext4 en el volumen lógico
- Extender los volúmenes lógicos de LVM (particiones root y no root)
LVM nos permite crear, redimensionar o eliminar particiones en un sistema en funcionamiento sin necesidad de reiniciarlo. En los pasos que mostramos a continuación podemos comprobar cómo extender la partición de root usando LVM en Linux.
1. Comprobamos el estado del disco y su estructura
Antes de comenzar a expandir una partición, vamos a comprobar el esquema de particiones del disco por medio del comando lsblk.
En la imagen podemos observar la partición de root en el volumen físico /dev/sda2
2: Extender el tamaño de disco deseado (partición de root u otra)
Como se muestra en el paso 1, la partición de root está en un disco de 20GB de tamaño. Queremos ampliarla hasta que alcance los 50GB extendiendo el disco del servidor virtual.
Si no reiniciamos el servidor después de redimensionar la partición, debemos volver a escanear los dispositivos SCSI.
Primero, comprobaremos los nombres de los dispositivos SCSI que tiene nuestra VM.
$ ls /sys/class/scsi_device/
0:0:0:0 1:0:0:0 2:0:0:0
Así pues, volvemos a escanear el bus scsi. A continuación, podemos reemplazar ‘0:0:0:0’ con el nombre actual del bus scsi que hemos visualizado con el comando ls utilizado previamente. Debemos añadir una contrabarra antes de los dos puntos presentando un aspecto un tanto extraño.
$ echo 1 > /sys/class/scsi_device/0\:0\:0\:0/device/rescan
Este comando volverá a escanear el bus scsi actual y mostrará el nuevo tamaño del disco.
A continuación, usamos growpart para extender la partición. En este ejemplo, estamos extendiendo la partición 2 en el disco /dev/sda (deben reemplazar el 2 y /dev/sda con los valores reales).
growpart /dev/sda 2
CHANGED: partition=2 start=2099200 old: size=39843840 end=41943040 new: size=102758367 end=104857567
Comprobamos que el cambio se ha realizado correctamente.
3: Redimensionado del volumen lógico de root para ocupar todo el espacio
Redimensionar el volumen físico (comando pvresize).
# pvresize /dev/sda2
Physical volume “/dev/sda2” changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
Comprobamos que es correcto el tamaño configurado del grupo de volumen.
Entonces, redimensionamos el volumen usado en el sistema de ficheros de root utilizando el nuevo grupo de volumen:
$ sudo lvextend -r -l +100%FREE /dev/name-of-volume-group/root
A continuación, un ejemplo de la expansión realizada en nuestro servidor:
Esta última instrucción, extiende el volumen lógico para utilizar toda la capacidad libre del grupo de volumen. Con el signo + indica que añadirá el espacio disponible al volumen lógico.
Las opciones del comando utilizadas son:
- -l – extiende o configura el tamaño del volumen lógico en unidades de extensiones lógicas
- -r – Redimensiona el filesystem subrayado junto al volumen lógico
Si se prefiere configurar el tamaño a crece manualmente, usaremos las siguientes opciones:
-L, –size [+]LogicalVolumeSize[bBsSkKmMgGtTpPeE]
donde los sufijos de size significan:
- M para megabytes
- G para gigabytes
- T para terabytes
- P para petabytes
- E para exabytes
Sin el signo + el valor a ampliar es tomado en valore absolutos.
# Add 20 gigabytes to the current logical volume size
$ sudo lvextend -r -L +20G /dev/name-of-volume-group/root
De esta última manera, obtendremos:
manteniendo todavía 30GB libres:
4: Actualización de los cambios en el filesystem (si no hemos usado la opción -r en el punto 3)
El filesystem de root todavía mostrará el tamaño inicial.
$ df -hT | grep mapper
/dev/mapper/rhel-root xfs 27G 1.9G 26G 8% /
Para mostrar el tamaño actual del filesystem, incluyendo la parte extendida, utilizaremos los siguientes comandos:
Para filesystem ext4
$ sudo resize2fs /dev/name-of-volume-group/root
Para filesystem XFS
$ sudo xfs_growfs /
DADE2: Somos un proveedor de soluciones corporativos en la nube. Tenemos localizaciones de Cloud Público en Alemania, España, Estados Unidos e Islandia en centros de datos de calidad enterprise. Alto rendimiento, Máxima fiabilidad. Contacte con nosotros