¡Hola a todos! Recientemente me enfrenté a una tarea que a primera vista parece sencilla: aumentar "en caliente" el tamaño del disco en un servidor Linux.
Descripción de la tarea
Tengo un servidor en la nube. En mi caso, es Google Cloud — Compute Engine. El sistema operativo es Ubuntu. Actualmente tengo un disco de 30 GB conectado. La base de datos está creciendo, los archivos se están expandiendo, por lo que necesito aumentar el tamaño del disco, digamos, a 50 GB. Mientras tanto, no desconectamos nada, ni reiniciamos.
¡Atención! Antes de comenzar, realizamos una copia de seguridad de toda la información importante.
1. Primero, verifiquemos cuánto espacio libre tenemos. En la consola de Linux escribimos:
df -h 
En palabras simples, tengo 30 GB en total y 7.9 GB libres actualmente. Necesito aumentar.
2. Luego, voy y a través de la consola de mi proveedor de alojamiento conecto un poco más de GB. En Google Cloud, esto se hace fácilmente, sin reiniciar. Accedo a Compute Engine -> Discos -> Elijo el disco de mi servidor — le cambiaremos el tamaño:

Entro, presiono "Editar" y aumento el tamaño del disco a las dimensiones que necesito (en mi caso, a 50 GB).
3. Ahora tenemos 50 GB. Verifiquemos esto en servidor con el comando:
sudo fdisk -l 
Vemos nuestros nuevos 50 GB, pero por ahora solo podemos utilizar 30 GB.
4. Ahora eliminaremos la partición actual de 30 GB y crearemos una nueva de 50 GB. Puede que tengas varias particiones. Es posible que también necesites crear varias nuevas. Para esta operación, utilizaremos el programa fdisk, que permite gestionar las particiones del disco duro. También es importante entender qué son las particiones y para qué sirven — leemos . Para iniciar el programa fdisk usamos el comando:
sudo fdisk /dev/sda5. Dentro del modo interactivo del programa fdisk realizamos varias operaciones.
Primero escribimos:
p 
El comando muestra una lista de nuestras particiones actuales. En mi caso, hay una partición de 30 GB y otros 20 GB en libre, si se puede decir así.
6. Luego escribimos:
d 
Eliminamos la partición actual para crear una nueva de 50 GB. Antes de la operación, nuevamente verificamos si hemos hecho una copia de seguridad de la información importante.
7. A continuación, indicamos al programa:
n 
El comando crea una nueva partición. Todos los parámetros deben establecerse por defecto — puedes simplemente presionar Enter. Si tienes algún caso especial, entonces indicas tus parámetros. Como se puede ver en la captura de pantalla, he creado una partición de 50 GB — que es lo que necesito.
8. En resumen, indico al programa:
w 
Este comando guarda los cambios y sale de fdisk. No se alarmen si la lectura de la tabla de particiones falla. El siguiente comando ayudará a corregir esto. Ya casi estamos.
9. Hemos salido de fdisk y hemos vuelto a la línea principal de Linux. Luego, escribimos, como nos aconsejaron anteriormente:
sudo partprobe /dev/sdaSi todo ha ido bien, no verán ningún mensaje. Si no tienen el programa partprobe, instálenlo. Es precisamente partprobe el que actualizará las tablas de las particiones, lo que nos permitirá expandir la partición a 50 GB en línea. Sigamos adelante.
¡Sugerencia! Pueden instalarlo así: partprobe apt-get install partprobe
10. Ahora solo queda redimensionar la partición con el programa
resize2fs . Hará esto en línea; incluso en ese momento los scripts estaban funcionando y escribiendo en el disco.El programa
reescribirá los metadatos del sistema de archivos. Para esto, usamos el siguiente comando: . Hará esto en línea; incluso en ese momento los scripts estaban funcionando y escribiendo en el disco. sudo resize2fs /dev/sda1
Aquí sda1 es el nombre de su partición. En la mayoría de los casos, es sda1, pero pueden haber excepciones. Tengan cuidado. Al final, el programa modificó el tamaño de la partición. Creo que esto es un éxito. 
11. Ahora asegurémonos de que el tamaño de la partición haya cambiado y ahora tenemos 50 GB. Para ello, repitamos el primer comando:
¿Por qué a los equipos de Data Science les convienen los generalistas en lugar de los especialistas?
df -h 
Fuente: habr.com
