GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo cambiar el esquema de partición en su servidor Linux?

Una vez que obtenga un VPS en un proveedor de alojamiento como DigitalOcean u OVH, es posible que desee personalizar el diseño de la partición. Sin embargo, a menudo no tiene otra opción:selecciona el sistema operativo deseado y luego se instala en una sola partición, ocupando todo el espacio disponible en el disco.

¡Sin embargo, los VPS no son solo para servidores web de una sola partición! Dependiendo de sus necesidades, es posible que desee agregar una partición de intercambio, otra para sus datos...

Afortunadamente, la mayoría de los proveedores de hosting ofrecen un modo de rescate , un sistema operativo alternativo en otro disco duro, desde el cual puede modificar el sistema operativo normal y el disco duro "normal".

El resto de esta guía asume que la única partición existente es del tipo Ext4 (o Ext2/3); es el caso si instaló Debian o Ubuntu.

No intente este método desde dentro del sistema, use el modo de rescate. Si no está seguro, consulte a su proveedor de VPS si le dan acceso a la consola de rescate. Cambiar el tamaño del sistema de archivos y la partición no borra los datos, dado que el nuevo tamaño deseado es mayor que la cantidad actual de datos. Aún así, haga una copia de seguridad en un disco/dispositivo/servidor externo.

Digamos que tiene que reducir la partición de 40 GiB a 2 GiB (comenzando desde el principio del disco) para poder crear otras particiones después.

Paso 1:Cambiar al modo de rescate e identificar el disco

Lo primero que debe hacer es reiniciar en modo de rescate, que suele ser un sistema Debian GNU/Linux. Se le dará una raíz temporal contraseña para este sistema temporal, solo acceda a él mediante SSH.

Luego, identifique el disco utilizado por su sistema normal; puedes usar fdisk -l .

Aquí /dev/sdb es el disco en el que queremos modificar el esquema de partición, y /dev/sdb1 la única partición por ahora. /dev/sda es el disco donde reside el sistema de rescate temporal. Por supuesto, durante el resto de este tutorial, reemplace sdb1 si no es el nombre de dispositivo correcto.

Paso 2:Reducir el sistema de archivos

Compruebe el sistema de archivos con e2fsck -f /dev/sdb1 (de lo contrario, el siguiente comando, resize2fs , puede que no funcione):

Es probable que e2fsck y resize2fs ya estén instalados en el sistema de rescate, pero en caso de que no estén presentes, instale el paquete e2fsprogs. En Debian, ejecute apt install e2fsprogs.

Además, asegúrese de que el tamaño del sistema de archivos no supere los 2 GiB. Proporcionar /mnt está vacío, monte el sistema de archivos con mount /dev/sdb1 /mnt y comprueba su tamaño con df :

Desmontar el sistema de archivos:umount /dev/sdb1 .

Antes de continuar con los siguientes comandos, y en caso de que ya haya personalizado el sistema o haya agregado datos importantes, ¡se recomienda hacer una copia de seguridad de sus archivos!

Vamos:ejecuta resize2fs /dev/sdb1 2G .

"2G" significa 2 GiB, también puede escribirlo "2048M". Cuando tomé la captura de pantalla a continuación, pensé erróneamente resize2fs lo entendí como 2000M, así que en su lugar proporcioné una cantidad de sectores (4194304 * 512 bytes por sector =2GiB). El resultado es exactamente el mismo.

Aquí el programa informa "524288 (4k) bloques". 524288 * 4096 B =2 GiB, así que está bien.

4k es el tamaño de unidad (bloque) a nivel de sistema de archivos, mientras que 512 es el tamaño de unidad (sector) a nivel de disco. ¿Cómo sé que es 512? ¡Mira la captura de pantalla "fdisk" arriba!

Paso 3:Reducir la partición

Hasta ahora, ha reducido el sistema de archivos, lo que significa que no puede agregarle datos que no se ajusten a su tamaño lógico de 2 GiB. Pero la partición, en la que se encuentra el sistema de archivos, sigue ocupando todo el espacio del disco.

Recomiendo parted para la gestión de particiones en Linux. En Debian, obténgalo con apt install parted . Esta herramienta se puede utilizar de forma interactiva. Ejecútelo con /dev/sdb como argumento:

Usar unit s , por lo que todos los tamaños se muestran como números de sectores (en lugar de MiB, GiB, etc.), lo cual es útil para controlar las cosas con precisión. De lo contrario, podría encontrarse con problemas como "La partición resultante no está correctamente alineada para obtener el mejor rendimiento" . El print free El comando le permite ver el estado del disco:

Desea que la partición 1 tenga una longitud de 2 GiB, lo que equivale a 2*1024*1024*1024/512 =4194304 sectores.

Ejecute resizepart 1 . A continuación, se le solicita la ubicación en el disco, expresada en sectores desde el principio del disco, donde debe terminar la partición. Ya que hay un área reservada , antes de la partición, que termina en el sector 2047, debes ingresar 4194304 + 2047 =4196351s .

No olvides la "s" final.

Responda "Sí" después del mensaje de advertencia, luego print free de nuevo para confirmar que la partición ha cambiado de tamaño.

Según mi experiencia, detenerse aquí y reiniciar podría "restaurar" el diseño de la partición en el estado anterior, es decir, ¡como si nunca hubiera reducido la partición!

Para "validar" los cambios, es mejor agregar al menos una partición en el espacio libre ahora.

Paso 4:Agregar otras particiones

Supongamos que desea agregar una partición Ext4 de 12 GiB después de la tomada por el sistema operativo.

Primero, debe "declarar" la partición, por lo que se agrega una entrada a la tabla de particiones (en algún lugar de la zona reservada). Usar mkpart primary ext4 :

Como en este ejemplo, comience su partición un sector después del final del anterior, para que no se desperdicie espacio. Aquí está 4196351 + 1 =4196352s .

El final está en 12*1024*1024*1024/512 sectores (el tamaño que desea para esta partición) + 4196351 sectores (el desplazamiento por ser la 2da partición) =29362175s .

Luego, salga de parted (C^d) y cree efectivamente un sistema de archivos Ext4 en sdb2. Para aplicar la configuración predeterminada de Ext4, el comando es:
mkfs.ext4 /dev/sdb2

El Fin

Este artículo fue solo una introducción sobre cómo manipular particiones y sistemas de archivos en la línea de comandos, centrándose en el caso práctico de servidores que tienen una partición grande de forma predeterminada (y dónde es posible que desee dividirla). Espero que haya sido útil.

Información del autor:Paul Desplanque es 100% autodidacta en todo lo relacionado con la informática. Con 8 años de experiencia en el desarrollo de PHP a sus espaldas, Paul es bastante experto en alojamiento propio.


Linux
  1. Cómo cambiar el color de tu terminal Linux

  2. Cómo cambiar la resolución del servidor VNC en Linux

  3. Cómo cambiar el shell predeterminado en Linux

  4. ¿Cómo iniciar el servidor Tomcat en Linux?

  5. ¿Cómo encuentro el UUID de un sistema de archivos?

Cómo establecer o cambiar la zona horaria en Linux

Cómo cambiar su nombre de host en Linux

Cómo verificar la carga de su servidor en Linux

Cómo cambiar la contraseña de root en Linux

Cómo cambiar el nombre de host del servidor en Ubuntu

¿Cómo cambiar la zona horaria en Ubuntu 18.04 Server?