Faisabilité du redimensionnement du système de fichiers (extension)
Le périphérique sous-jacent (la partition dans notre cas) sur lequel réside un système de fichiers EXT3/4 doit d'abord être redimensionné avant que le système de fichiers puisse être redimensionné. En conséquence, la faisabilité du redimensionnement du périphérique sous-jacent doit d'abord être établie pour déterminer si le redimensionnement du système de fichiers est possible.
Les conditions/scénarios suivants permettent de redimensionner (étendre) un système de fichiers EXT3/4 :
- Le système de fichiers EXT3/4 réside sur un périphérique/partition mais n'occupe pas entièrement l'espace de la partition et un espace disque suffisant existe entre la fin du système de fichiers et la limite de fin de partition.
- Le système de fichiers EXT3/4 réside sur un périphérique/partition occupant tout l'espace de la partition, mais il existe suffisamment de blocs libres contigus sur le disque/périphérique immédiatement après la limite de fin de la partition du système de fichiers et soit le
- limite de début de partition suivante ou
- fin du disque/périphérique entier)
Sauvegarder toutes les données du système de fichiers à redimensionner
Le redimensionnement d'un système de fichiers et des périphériques sous-jacents est dangereux et potentiellement destructeur s'il n'est pas effectué correctement. Les dispositifs de repartitionnement sont tout aussi destructeurs et peuvent entraîner une perte totale de données. Avant de continuer, sauvegardez le contenu du système de fichiers/périphérique à redimensionner.
Redimensionnement (extension) du système de fichiers non racine sur la partition de disque dur (non-LVM)
Dans cet exemple, le périphérique /dev/sdb (20 Go) contient une seule partition principale (/dev/sdb1) de 11 Go avec un système de fichiers EXT3/4 (/data) qui s'étend sur toute la partition.
Environ 9 Go d'espace disque libre existent entre la fin de la partition et la fin de l'appareil.
# 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
Démontez le système de fichiers à redimensionner, par exemple :
# umount /data
Vérifiez le type de système de fichiers du système de fichiers à redimensionner.
# blkid /dev/sdb1 /dev/sdb1: LABEL="/data" UUID="1fc0bbcd-ba86-40b6-b562-5da90fb0d7af" TYPE="ext3"
Effectuez une vérification du système de fichiers du système de fichiers en veillant à utiliser l'utilitaire de vérification du système de fichiers correspondant (fsck.ext3, fsck.ext4) pour le type de système de fichiers, par exemple :
# 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
Cette étape suppose qu'il existe de l'espace disque libre entre la fin de la partition et la fin du périphérique. Si l'espace disque libre n'est pas disponible, engagez votre administrateur de stockage pour développer/étendre le périphérique sous-jacent avant de recréer une partition plus grande. Utilisez l'utilitaire fdisk pour supprimer puis recréer une partition plus grande, en veillant à réutiliser le bloc de démarrage de la partition d'origine, par ex. :
# 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.
Vérifiez que le système peut maintenant voir la plus grande partition nouvellement créée, par exemple :
# cat /proc/partitions | grep sdb 8 16 20971520 sdb 8 17 20964793 sdb1
Si le système ne parvient pas à détecter le nouveau dimensionnement de la partition, exécutez l'utilitaire partprobe sur le périphérique redimensionné, par exemple :
# partprobe /dev/sdb
Utilisez l'utilitaire resize2fs pour étendre le système de fichiers EXT3/4 afin d'utiliser l'espace supplémentaire dans la partition, par exemple :
# 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.Remarque :lors de l'exécution de resize2fs, si aucune taille n'est spécifiée, le système de fichiers sera étendu pour utiliser tout l'espace disponible/restant dans la partition.
Effectuez une vérification du système de fichiers du système de fichiers EXT3/4 redimensionné en veillant à utiliser l'utilitaire de vérification du système de fichiers correspondant (fsck.ext3, fsck.ext4) pour le type de système de fichiers utilisé, par exemple :
# 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
Montez le système de fichiers EXT3/4 nouvellement redimensionné, par exemple :
# mount /data
Examinez dmesg, le journal des messages, etc. pour vérifier que le redimensionnement du système de fichiers a réussi, par exemple :
# df -h /data Filesystem Size Used Avail Use% Mounted on /dev/sdb1 20G 11G 9.0G 54% /dataCentOS / RHEL :Redimensionner (réduire) le système de fichiers EXT3/4 non racine sur un périphérique non LVM (partition de disque dur)