Cómo cambiar el tamaño de la partición de raíz ext4 en vivo sin Umount en Linux

Cómo cambiar el tamaño de la partición de raíz ext4 en vivo sin Umount en Linux

Este artículo se centrará en cómo cambiar el tamaño de la partición raíz de ext4 sin desmontaje. Esta es una manera fácil para algún sistema en el que no pueda desmontar la partición raíz y el sistema se puede recuperar fácilmente si algo sale mal como por ejemplo la instancia de AWS.

Respensar cualquier partición en vivo sin unmout viene con un riesgo tremendo de perder datos, por lo que no se recomienda. Si tiene datos confidenciales almacenados en su sistema, siempre se recomienda tomar el sistema, hacer una copia de seguridad y cambiar el tamaño de la partición mientras no está montado.

En el siguiente ejemplo, vamos a cambiar el tamaño de una partición de una nueva instancia de AWS Linux de partición única. El tamaño de la partición actual es 7.8GB:

# DF -H . Tamaño del sistema de archivos utilizado disponible use% montado en /dev /xvda1 7.8G 642M 6.8g 9% / 

Sin embargo, el tamaño del disco informa 20 GB:

# fdisk -l disco/dev/xvda: 20 gib, 21474836480 bytes, 41943040 unidades de sectores: sectores de 1 * 512 = 512 bytes sector tamaño (lógico/físico): 512 bytes/512 bytes i/o tamaño (mínimo/optimal) : 512 bytes /512 bytes disklabel Tipo: identificador de disco DOS: 0xd7f2e0e8 Sectores de arranque del dispositivo Tipo de identificación de tamaño de tamaño /dev /xvda1 * 4096 16773119 16769024 8G 83 Linux Linux 

La partición anterior se monta como raíz y, por lo tanto, la partición no puede ser desplegable:

# Umount / Umount: /: Target está ocupado. (En algunos casos, información útil sobre los procesos que usan el dispositivo es encontrado por LSOF (8) o Fuser (1))) 

Todo lo que hay que hacer es tomar nota de un sector inicial de una partición actual, que en nuestro caso es 4096. Elimine la partición y recree una nueva partición más grande a partir del sector 4096. Para esto simplemente vamos a usar fdisk dominio. Comencemos por imprimir nuevamente nuestra tabla de partición actual:

# fdisk /dev /xvda Bienvenido a FDisk (Util-Linux 2.25.2). Los cambios permanecerán solo en la memoria, hasta que decida escribirlos. Tenga cuidado antes de usar el comando de escritura. Comando (M para ayuda): P disco/dev/xvda: 20 GIB, 21474836480 bytes, 41943040 unidades de sectores: sectores de 1 * 512 = 512 bytes sector tamaño (lógico/físico): 512 bytes/512 bytes i/o tamaño (( mínimo /óptimo): 512 bytes /512 bytes disklabel Tipo: DOS Identificador de disco: 0xd7f2e0e8 Sectores de arranque de dispositivo Tipo de identificación de tamaño /dev /xvda1 * 4096 16773119 16769024 8g 83 Linux Linux 

Una vez más, tome nota del sector inicial 4096. Todavía en fdisk'S Modo interactivo eliminar la partición:

Comando (m para ayuda): D Partition seleccionada 1 Partition 1 se ha eliminado. 


A continuación, cree una nueva partición justo en la parte superior de la anterior y asegúrese de utilizar el mismo sector inicial:

Comando (m para ayuda): n tipo de partición p primario (0 primario, 0 extendido, 4 gratis) E extendido (contenedor para particiones lógicas) Seleccione (P): P) Número de partición P (1-4, predeterminado 1): Primer sector (2048-41943039, predeterminado 2048): 4096 Último sector, +sectores o +tamaño k, m, g, t, p (4096-41943039, predeterminado 41943039): creó una nueva partición 1 de tipo 'linux' y de tamaño 20 gib. 

Haga que la Partición 1 Bootable e imprima la nueva tabla de partición:

Comando (m para ayuda): una partición seleccionada 1 El indicador de arranque en la partición 1 está habilitado ahora. Comando (M para ayuda): P disco/dev/xvda: 20 GIB, 21474836480 bytes, 41943040 unidades de sectores: sectores de 1 * 512 = 512 bytes sector tamaño (lógico/físico): 512 bytes/512 bytes i/o tamaño (( mínimo /óptimo): 512 bytes /512 bytes disklabel Tipo: DOS Identificador de disco: 0xd7f2e0e8 Sectores de arranque de dispositivo Tipo de identificación de tamaño /dev /xvda1 * 4096 41943039 41938944 20g 83 Linux Linux 

Confirme todos los nuevos detalles y escriba una nueva tabla de partición:

Comando (m para ayuda): w La tabla de partición ha sido alterada. Llamar a ioctl () para volver a leer la tabla de particiones. Volver a leer la tabla de partición falló.: Dispositivo o recurso ocupado El kernel todavía usa la tabla antigua. La nueva tabla se usará en el próximo reinicio o después de ejecutar PartProbe (8) o KPartx (8). 

En este punto, el sistema debe reiniciarse para volver a montar nuestra partición raíz con un nuevo tamaño. Forzar a FSCK en el próximo reinicio para asegurarse de que la partición se verifique antes de montarla. Para hacerlo, simplemente cree un archivo vacío llamado forcefsck en la raíz de tu / dividir:

# touch /forcefsck 

Reinicie su sistema. Una vez que el sistema vuelva a verificar el tamaño de la partición:

DF -H . Tamaño del sistema de archivos Usado disponible Use% montado en /dev /xvda1 20g 644m 19g 4% / 

y la última comprobación de FSCK:

# tune2fs -l /dev /xvda1 

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Ubuntu 22.04 Copia de seguridad y restauración del sistema
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cómo montar la imagen ISO en Linux
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Cómo arrancar dual Kali Linux y Windows 10
  • Archivos de configuración de Linux: los 30 principales más importantes
  • Descargar CD/DVD Linux en vivo
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?