Viabilidad del cambio de tamaño del sistema de archivos (ampliación)
El dispositivo subyacente (partición en nuestro caso) en el que reside un sistema de archivos EXT3/4 primero debe cambiarse de tamaño antes de poder cambiar el tamaño del sistema de archivos. En consecuencia, primero se debe establecer la viabilidad del cambio de tamaño del dispositivo subyacente para determinar si es posible cambiar el tamaño del sistema de archivos.
Las siguientes condiciones/escenarios hacen factible cambiar el tamaño (ampliar) un sistema de archivos EXT3/4:
- El sistema de archivos EXT3/4 reside en un dispositivo/partición pero no ocupa completamente todo el espacio dentro de la partición y existe suficiente espacio en disco entre el final del sistema de archivos y el límite final de la partición.
- El sistema de archivos EXT3/4 reside en un dispositivo/partición que ocupa todo el espacio de la partición; sin embargo, existen suficientes bloques libres contiguos en el disco/dispositivo inmediatamente después del límite final de la partición del sistema de archivos y
- límite de inicio de la siguiente partición o
- final de todo el disco/dispositivo)
Copia de seguridad de todos los datos en el sistema de archivos para cambiar el tamaño
Cambiar el tamaño de un sistema de archivos y dispositivos subyacentes es peligroso y potencialmente destructivo si se realiza incorrectamente. El reparticionamiento de dispositivos es igualmente destructivo y puede resultar en la pérdida completa de datos. Antes de continuar, haga una copia de seguridad del contenido del sistema de archivos/dispositivo que desea cambiar de tamaño.
Cambiar el tamaño (extender) el sistema de archivos no raíz en la partición del disco duro (no LVM)
En este ejemplo, el dispositivo /dev/sdb (20 Gb) contiene una única partición primaria (/dev/sdb1) de 11 Gb con un sistema de archivos EXT3/4 (/data) que abarca toda la partición.
Aproximadamente Existen 9 Gb de espacio libre en disco entre el final de la partición y el final del dispositivo.
# df -k /data Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdb1 11353328 10668192 223764 98% /data
# cat /proc/partitions | grep sdb 8 16 20971520 sdb 8 17 12008556 sdb1
# fdisk -l /dev/sdb Disk /dev/sdb: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 1495 12008556 83 Linux
Desmonte el sistema de archivos para cambiar el tamaño, por ejemplo:
# umount /data
Verifique el tipo de sistema de archivos del sistema de archivos que desea cambiar de tamaño.
# blkid /dev/sdb1 /dev/sdb1: LABEL="/data" UUID="1fc0bbcd-ba86-40b6-b562-5da90fb0d7af" TYPE="ext3"
Realice una verificación del sistema de archivos del sistema de archivos asegurándose de usar la utilidad de verificación del sistema de archivos correspondiente (fsck.ext3, fsck.ext4) para el tipo de sistema de archivos, por ejemplo:
# fsck.ext3 -fy /dev/sdb1 e2fsck 1.39 (29-May-2006) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information data: 21/1441792 files (4.8% non-contiguous), 2712300/2883584 blocks
Este paso supone que existe espacio libre en el disco entre el final de la partición y el final del dispositivo. Si no hay espacio libre en disco disponible, solicite a su administrador de almacenamiento que haga crecer o amplíe el dispositivo subyacente antes de volver a crear una partición más grande. Use la utilidad fdisk para eliminar y luego volver a crear una partición más grande, asegurándose de reutilizar el bloque de inicio de la partición original, p. :
# fdisk /dev/sdb The number of cylinders for this disk is set to 2610. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): p Disk /dev/sdb: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 1495 12008556 83 Linux Command (m for help): d ### this step deletes the partition Selected partition 1 Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-2610, default 1): [enter] Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-2610, default 2610): [enter] Using default value 2610 Command (m for help): p Disk /dev/sdb: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 2610 20964793+ 83 Linux Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
Verifique que el sistema ahora pueda ver la partición más grande recién creada, por ejemplo:
# cat /proc/partitions | grep sdb 8 16 20971520 sdb 8 17 20964793 sdb1
Si el sistema no detecta el nuevo tamaño de partición, ejecute la utilidad partprobe contra el dispositivo redimensionado, por ejemplo:
# partprobe /dev/sdb
Use la utilidad resize2fs para extender el sistema de archivos EXT3/4 para utilizar el espacio adicional en la partición, por ejemplo:
# resize2fs /dev/sdb1 resize2fs 1.39 (29-May-2006) Resizing the filesystem on /dev/sdb1 to 5241198 (4k) blocks. The filesystem on /dev/sdb1 is now 5241198 blocks long.Nota :al ejecutar resize2fs, si no se especifica un tamaño, el sistema de archivos se ampliará para utilizar todo el espacio disponible/remanente en la partición.
# fsck.ext3 -fy /dev/sdb1 e2fsck 1.39 (29-May-2006) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information data: 21/2621440 files (4.8% non-contiguous), 2750333/5241198 blocks
Monte el sistema de archivos EXT3/4 recién redimensionado, por ejemplo:
# mount /data
Revise dmesg, registro de mensajes, etc. para verificar que el cambio de tamaño del sistema de archivos se haya realizado correctamente, por ejemplo:
# df -h /data Filesystem Size Used Avail Use% Mounted on /dev/sdb1 20G 11G 9.0G 54% /dataCentOS/RHEL:cambiar el tamaño (reducir) el sistema de archivos EXT3/4 no raíz en un dispositivo que no sea LVM (partición del disco duro)