Table des matières
Augmenter la taille d'une partition sans la démonter
Introdution
Cette page explique comment changer la taille d'une partition (non LVM) sans avoir à la démonter, y compris la partition root. Il faudra cependant démonter les partitions situé plus loin sur le disque (notamment le swap).
ATTENTION, je ne suis pas responsable des pertes potentiel des données, même si je ne n'ai jamais rencontré d'erreurs.
Cette page est utile si par exemple vous manquait de place sur un partition de VM et que vous voulais l'augmenter.
Mise en Application
Cela se décompose en cinq étapes
Etape 1 : Démonter les partitions suivantes
Ça concerne aussi la partition swap
Etape 2 : Changement de la table de partition
Voici l'étape inutile avec une partition LVM, c'est à dire changer la table de partition. Et pour cela rien de plus simple que d'utiliser fdisk
Pour cela, lancer la commande :
# fdisk /dev/vda
Vous pouvez lister les partitions avec p :
Disque /dev/vda : 30 GiB, 32212254720 octets, 62914560 secteurs Unités : secteur de 1 × 512 = 512 octets Taille de secteur (logique / physique) : 512 octets / 512 octets taille d'E/S (minimale / optimale) : 512 octets / 512 octets Type d'étiquette de disque : dos Identifiant de disque : 0x439c67fe Périphérique Amorçage Début Fin Secteurs Taille Id Type /dev/vda1 * 2048 37750783 37748736 18G 83 Linux /dev/vda2 37752830 41940991 4188162 2G 5 Étendue /dev/vda5 37752832 41940991 4188160 2G 82 partition d'échange
Supprimer la partition concerné ainsi que les suivante :
Commande (m pour l'aide) : d Numéro de partition (1,2, 2 par défaut) : 1 La partition 1 a été supprimée. Commande (m pour l'aide) : d Partition 2 sélectionnée La partition 2 a été supprimée.
puis il faut les recréer la partition :
Oubliez pas de laisser de la place pour le swap.
Commande (m pour l'aide) : n Type de partition p primaire (0 primaire, 0 étendue, 4 libre) e étendue (conteneur pour partitions logiques) Sélectionnez (p par défaut) : Utilisation de la réponse p par défaut. Numéro de partition (1-4, 1 par défaut) : Premier secteur (2048-62914559, 2048 par défaut) : Dernier secteur, +secteurs ou +taille{K,M,G,T,P} (2048-62914559, 62914559 par défaut) : +28G Une nouvelle partition 1 de type « Linux » et de taille 28 GiB a été créée. La partition #1 contient une signature ext4. Voulez-vous supprimer la signature ? [O]ui/[N]on : N
Puis on recréer la partition swap:
Commande (m pour l'aide) : n Type de partition p primaire (1 primaire, 0 étendue, 3 libre) e étendue (conteneur pour partitions logiques) Sélectionnez (p par défaut) : Utilisation de la réponse p par défaut. Numéro de partition (2-4, 2 par défaut) : Premier secteur (58722304-62914559, 58722304 par défaut) : Dernier secteur, +secteurs ou +taille{K,M,G,T,P} (58722304-62914559, 62914559 par défaut) : Une nouvelle partition 2 de type « Linux » et de taille 2 GiB a été créée. Commande (m pour l'aide) : t Numéro de partition (1,2, 2 par défaut) : 2 Type de partition (taper L pour afficher tous les types) : 82 Type de partition « Linux » modifié en « Linux swap / Solaris »
Il faut aussi rendre la partition amorçable si celle ci l'était :
Commande (m pour l'aide) : a Numéro de partition (1,2, 2 par défaut) : 1 L’indicateur d’amorçage de la partition 1 est maintenant activé.
Et pour finir, le moment fatidique, on valide :
Commande (m pour l'aide) : w La table de partitions a été altérée. Appel d'ioctl() pour relire la table de partitions. Échec de relecture de la table de partitions.: Périphérique ou ressource occupé Le noyau continue à utiliser l'ancienne table. La nouvelle sera utilisée lors du prochain démarrage ou après avoir exécuté partprobe(8) ou kpartx(8).
Etape 3: Recharger la table de partition par le kernel
Théoriquement inutile, mais sait on jamais.
On rentre dans le vif de la galère de la compatibilité, car là on dépends du hardware .
Certains disques ne supportent pas le scan des partitions par le noyaux (notamment les disques virtio).
Il faut taper la commande issue du packet parted :
# partprobe
Etape 4: Redimensionner les partitions
Il vous suffit de lancer la commande :
# resize2fs /dev/vda1
Et pour la partition SWAP, il vous faut lancer la commande :
# mkswap /dev/vda2
Etape 5: Mise en place du montage automatique
Il suffira de récupérer les UUIDs avec la commande :
# blkid /dev/vda1: UUID="8bb4578f-ce81-4cb2-94ad-e6e97960e350" TYPE="ext4" PARTUUID="439c67fe-01" /dev/vda2: UUID="63bd67d4-58dd-4a8d-974c-359a15f82730" TYPE="swap" PARTUUID="439c67fe-02"
Puis de les reporter dans le fichier /etc/fstab, mais là je vous laisse vous en référer a la doc .
Si vous avez touché a la partition swap, il vous faut remplacer le UUID dans le fichier /etc/initramfs-tools/conf.d/resume
RESUME=UUID=63bd67d4-58dd-4a8d-974c-359a15f82730
et lancer la commande :
# update-initramfs -u
puis pour conclure lancer la commande :
# mount -a