© Tito
Resize partition ext3 sur Redhat / Fedora
Quand parted ne suffit pas sur une partition ext3 ...
certaines partition ext3 ne peuvent pas etre resizer directement avec parted ou gparted (version trop ancienne etc).
voici comment faire en manuel et à chaud :
1a/ Check : répérer la partition :
[root@athena ~]# mount
/dev/sda3 on / type ext3 (rw)
proc on /proc type proc (rw)
...
/dev/sdb2 on /free type ext3 (rw)
ici on a 2 disques durs (sda et sdb) et on va resizer la partition sdb2 pour gagner de la place et pouvoir en créer de nouvelles au bout
1b/ check : vérifier la table de partition de ce disque dur :
[root@athena ~]# fdisk -l -u /dev/sdb
Disque /dev/sdb: 120.0 Go, 120034123776 octets
255 heads, 63 sectors/track, 14593 cylinders, total 234441648 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Périphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 63 117274499 58637218+ 83 Linux
/dev/sdb2 117274500 234436544 58581022+ 83 Linux
1c/ check : ok pas d'autres partitions au dela de sda2 , ça s'y prete bien, on vérifie la place dispo sur le file system pour cette partition :
[root@athena ~]# df -h /dev/sdb2
Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
/dev/sdb2 55G 31G 25G 57% /freeok on a 25G de dispo , on peut donc réduire par exemple de 10G
2a/ c'est parti , d'abord démonter la partition :
[root@athena ~]# umount /free
2b/ faire 1 check complet pour avoir un filesystem bien propre :
[root@athena ~]# e2fsck -f /dev/sdb2
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
/dev/sdb2: 15915/7323648 files (8.5% non-contiguous), 8312879/14645255 blocks
2c/ resizer le filesystem pour le passer de 55G à 45G :
root@athena ~]# resize2fs /dev/sdb2 45G
resize2fs 1.39 (29-May-2006)
Resizing the filesystem on /dev/sdb2 to 11796480 (4k) blocks.
Le système de fichiers /dev/sdb2 a maintenant une taille de 11796480 blocs.
(A ce stade la partition fait encore 55G mais le filesystem qui est dessus ne fait plus que 45G)
2d/ calculer la taille effective de ce filesystem en fonction du retour ci dessus :
11796480 * 4k = 47185920k
on ajoute les 5% de blocks réservé pour le super utilisateur (on peut les supprimer avec tunefs pour gagner 5% mais c'est pas le sujet ) :
47185920k * 1.05 =
49545216k
2e/ maintenant on ajuste la table de partition pour mettre la partition à la bonne taille :
[root@athena ~]# fdisk /dev/sdb
faites 'p' pour afficher la table (recopier tout sur un bout de papier, si vous casser la table il suffira de la refaire à l'identique)
faites 'd' puis '2' pour détruire la partition 2
faites 'n' puis 'p' puis '2' pour recréer la partition 2, en premier cylindre validez la valeur proposée, puis en dernier cylindre saisissez la taille voulue comme calculée ci dessus, précédée d'un '+' et avec l'unité au bout :
+49545216k faites 'p' pour afficher la table
faites 'w' si tout est ok pour l'enregistrer
2f/ pour signaler au kernel que la table a changer :
[root@athena ~]# partprobe
(ou sinon rebootez comme sur ouinedoz :) )
3/ c'est fini , maintenant remonter la partition :
[root@athena ~]# mount /free
et vérifiez la taille :
[root@athena ~]# df -h /free
Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
/dev/sdb2 45G 31G 14G 70% /free
avant :
/dev/sdb2 55G 31G 25G 57% /free
5 031 clics - Créé le 07/02/2011 par Tito - Modifié le 07/02/2011