Todos nuestros servidores vienen con un servicio de Cloud Init, este servicio se encarga de varias tareas como cambio de contraseñas, actualizar hostname y también se encarga de extender nuestra partición cuando hace un redimensionamiento de disco.
Si has migrado tu servidor desde otra plataforma o has eliminado el servicio de Cloud Init cuando hagas redimensionamiento deberás extender la partición manualmente, en este artículo te explicamos como hacerlo en Linux puedes consultar el artículo de Windows. En caso de un servidor pfSense, el proceso es diferente y puedes hacer clic aquí para revisarlo.
Cómo extender particiones en Linux
Para extender la partición entraremos a nuestro servidor por SSH y ejecutaremos:
# growpart /dev/sda 1
El comando anterior extiende la partición; no cambia el filesystem. Si nos muestra un mensaje tipo:
NOCHANGE: partition 1 is size 2048. it cannot be grown
Podemos pasar al siguiente paso (extender el filesystem). Por otra parte, si aparece:
mkdir: cannot create directory ‘/tmp/growpart.35060’: No space left on device
Deberás liberar algo de espacio antes (Falta espacio para extender la partición).
Puedes comprobar que ha aumentado el tamaño de la partición ejecutando:
# sfdisk -l
Nos devolverá un resultado similar a:
Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x566d4019
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 209715166 209713119 100G 83 Linux
Para revisar que filesystem tenemos deberemos de ejecutar el siguiente comando:
# df -h
Esto nos mostrará lo siguiente:
Filesystem Size Used Avail Use% Mounted on
udev 487M 0 487M 0% /dev
tmpfs 100M 9.1M 91M 10% /run
/dev/sda1 99G 1.1G 94G 2% /
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 496M 0 496M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/0
Si nos fijamos, veremos que nuestro dispositivo es el siguiente: /dev/sda1. Con esto, ejecutaremos el siguiente comando para extender el filesystem:
# resize2fs /dev/sda1 # Extiende el filesystem
Importante
Si tu dispositivo es diferente, deberás de ejecutar el comando con el dispositivo que te aparezca en el anterior comando, por lo si por ejemplo tu dispositivo es /dev/sda2 entonces deberás de ejecutar:
# resize2fs /dev/sda2
Podemos comprobar que ha aumentado el tamaño del filesystem ejecutando:
# df -h
Nos devolverá un resultado similar a:
Filesystem Size Used Avail Use% Mounted on
udev 487M 0 487M 0% /dev
tmpfs 100M 9.1M 91M 10% /run
/dev/sda1 99G 1.1G 94G 2% /
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 496M 0 496M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/0
Cómo extender la partición en pfSense o FreeBSD
Para extender la partición en un servidor pfsense, puedes utilizar el servicio growfs directamente:
# service growfs onestart
Realizará el proceso de extensión automáticamente al iniciarse.
Casos de errores
Errores en sistema de partición
Si durante el proceso de extender la partición obtenemos errores seguramente hay algún problema con la partición de nuestro servidor, para solucionarlo ejecutaremos un fsck para comprobar y reparar errores.
Por ejemplo, en Linux puede ser que nos encontremos con este error:
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 4, new_desc_blocks = 7
resize2fs: Permission denied to resize filesystem
En ese caso, debéis de seguir las instrucciones de Comprobar y reparar el sistema de ficheros con FSCK.
Falta espacio para extender la partición
También puede ocurrir que no haya espacio suficiente espacio libre en la partición y pueda ejecutarse la extensión de la partición, apareciendo el siguiente mensaje:
mkdir: cannot create directory ‘/tmp/growpart.35060’: No space left on device
FAILED: failed to make temp dir
Por lo tanto, primero deberás liberar algo de espacio. Puedes ejecutar una limpieza con el sistema de paquetes y eliminar los obsoletos:
# apt autoclean && apt autoremove
Una vez realizado, deberías tener espacio suficiente para extender la partición.
Esperamos haberte ayudado con este artículo. Si te quedan dudas sobre esta u otra cuestión relacionada con tus servidores en Clouding, escríbenos a soporte@clouding.io. ¡Estamos para ayudarte! 😉