Cómo ampliar el tamaño de una partición de disco en Ubuntu

Si trabajas con máquinas virtuales Ubuntu Linux y quieres aumentar el espacio en disco, este proceso puede ser un poco complicado si no conoces los pasos correctos. La configuración predeterminada suele usar volúmenes lógicos (LVM), lo que significa que aumentar el tamaño del disco implica más que simplemente añadir más espacio al hipervisor. Se trata de redimensionar el disco físico, luego extender la partición y, finalmente, expandir los LVM y los sistemas de archivos que contiene. Esto puede ser un poco complicado, especialmente si eres nuevo en la gestión de LVM, pero una vez que conoces el flujo, es factible.¿El resultado? Tu máquina virtual Ubuntu verá el nuevo espacio y podrás empezar a usarla sin tener que reinstalar ni volver a crear todo.

Cómo ampliar el espacio del disco virtual y redimensionar particiones en Ubuntu Linux

Aumente el disco virtual en su hipervisor

Este es el punto de partida, obvio, pero a menudo se pasa por alto. Debe indicarle a su hipervisor que otorgue más espacio en disco a la máquina virtual. Aquí tiene algunos consejos rápidos para hipervisores comunes:

  • En VMware : En VM > Configuración > Disco duro, aumente el tamaño del disco y apague la VM. Después, reinicie y use las herramientas de la VM para reconocer el nuevo espacio.
  • En Hyper-V : Use el Administrador de Hyper-V. Haga clic derecho en su máquina virtual, vaya a Configuración, busque el disco duro virtual y haga clic en Editar disco. Seleccione Expandir y configure el nuevo tamaño. Reinicie la máquina virtual después.
  • Para KVM : use el comando qemu-img resize /path/to/disk.img +10Gpara hacer crecer la imagen y luego inicie la VM.

Por supuesto, con la virtualización todo es un poco como un baile, y a veces es necesario reiniciar o actualizar para que el sistema operativo detecte el nuevo espacio.

Forzar a Ubuntu a buscar nuevo espacio en disco

Una vez que se aumenta el disco de la máquina virtual, Ubuntu no detecta automáticamente el nuevo espacio libre. Debe forzar un nuevo análisis:

$ echo 1 > /sys/class/block/sda/device/rescan

Este comando le indica a Ubuntu que vuelva a examinar el disco físico y reconozca cualquier cambio. En algunas configuraciones, funciona de inmediato; en otras, reiniciar la máquina virtual puede ser más fácil si no se actualiza.

Cambiar el tamaño de la partición con cfdisk

Siguiente paso: gestionar la tabla de particiones. Comenzando con cfdisk (una interfaz de usuario intuitiva para fdisk), ejecute:

$ sudo cfdisk

Busca la partición que contiene tu sistema de archivos raíz, normalmente /dev/sda3. Deberías ver espacio sin asignar. Usa la opción Redimensionar : selecciona la partición, redimensiona para llenar el espacio sobrante, selecciona Escribir y confirma. Después, cierra cfdisk. Es bastante fácil, pero ten cuidado: los cambios incorrectos pueden causar problemas.

Nota: Si cfdisk no muestra el espacio libre, intente usar parted. A veces es más fiable para trabajar con discos grandes o GPT.

Compruebe si su sistema utiliza LVM

Antes de continuar, confirma si estás usando LVM. Ejecuta:

$ sudo lsblk

Busca una línea con LVM. Si ves que tu partición raíz es algo como /dev/mapper/ubuntu–vg-ubuntu–lv, LVM la gestiona. De lo contrario, es posible que estés redimensionando una partición normal directamente. En ese caso, el proceso es diferente y probablemente tengas que redimensionar el sistema de archivos directamente después de ajustar la partición.

Cambiar el tamaño del volumen físico y el volumen lógico

Si tiene LVM, los siguientes pasos implican redimensionar el PV y luego extender el LV.¿Por qué? Porque LVM apila los discos físicos en grupos de volúmenes, que a su vez contienen volúmenes lógicos. Para que el espacio sea utilizable, primero debe extender el PV para que cubra el nuevo tamaño de la partición:

$ sudo pvresize /dev/sda3

Este comando amplía su volumen físico para usar el nuevo espacio. Después, revise su grupo de volúmenes:

$ sudo vgdisplay

Muestra cuánto espacio libre tienes ahora. Para ampliar el LV (la partición que contiene tu carpeta raíz o de inicio), ejecuta:

$ sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv

Este comando utiliza todo el espacio libre del grupo de volúmenes. Una vez extendido el volumen lógico, redimensione el sistema de archivos con:

$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

Este último paso hace que Ubuntu reconozca el nuevo tamaño; al comprobarlo, df -hdebería aparecer el aumento de espacio en disco. Sinceramente, es un poco raro, pero en algunas configuraciones, este proceso no siempre funciona a la primera; es posible que tengas que repetirlo o reiniciar para que todo se solucione.

Alternativa para configuraciones que no son LVM

Si no usas LVM, no te preocupes. Puedes intentar usar parted para redimensionar la partición directamente:

$ sudo parted print free

Busque el número de la partición a redimensionar y luego ejecute:

$ sudo parted resizepart n

Reemplace n con el número de partición. Tenga cuidado: redimensionar particiones puede ser peligroso si elige la opción incorrecta.

Si quieres profundizar en la gestión de discos de Linux, consulta el repositorio de GitHub: Winhance para encontrar scripts o guías. A veces, automatizar esto deja de ser tan complicado.