15/11/2024

AstucesCommandes et Système

Windows et Linux : comment augmenter la taille du disque système d’une VM ?

I. Présentation

De nos jours, les machines virtuelles (VM) sont largement utilisées pour la mise en place d'environnements de développement, de tests, de production et de sauvegarde. Cependant, avec l'augmentation constante des données à stocker et à traiter, il peut être nécessaire d'augmenter la taille des disques virtuels de vos machines virtuelles pour répondre aux besoins de votre organisation.

Cette opération peut sembler complexe, surtout si vous n'êtes pas familier avec la gestion de machines virtuelles. Dans cet article, nous allons vous expliquer comment augmenter la taille des disques virtuels de vos VMs, que vous utilisiez un système Linux ou Windows. Nous vous donnerons également des astuces pour éviter les erreurs courantes et garantir une opération en toute sécurité.

J'utilise VMware Workstation 17 pour la démonstration.

II. Augmenter la taille du disque virtuel VMware

La première étape va consister à augmenter la taille de votre disque depuis les paramètres de votre VM. Pour ma part, je vais provisionner 20 Go supplémentaires, pour avoir un disque de 80 Go environ pour ma VM Windows. Dans les propriétés de la VM, on sélectionne le disque et on clique sur "Expand Disk" sur la droite.

Attention : la taille d'un disque ne peut pas être augmentée s'il appartient à une VM qui a un ou plusieurs snapshots, il faut donc d'abord supprimer le(s) snapshot(s) avant de pouvoir réaliser l'expansion du disque.

Une fois que cette opération est faite, vous devez vous procurer l'utilitaire gparted, en téléchargeant son ISO puis en l'ajoutant dans le lecteur CD/DVD virtuel de la VM, afin de pouvoir booter dessus au démarrage de la VM. Comme ceci :

III. VM Windows : augmenter la taille de la partition système

Comme vous pouvez le constater, j'ai une VM disposant d'un disque de 60 Go environ. Je souhaite que cette valeur passe à 80 Go. Le problème, c'est que la partition correspondante à "C:" est positionnée entre deux autres partitions système, ce qui ne permet pas de l'étendre directement sur l'espace libre que l'on vient d'ajouter.

Note : si l'on souhaite étendre la taille d'un disque qui n'est pas celui du système, cette problématique n'existe pas. De ce fait, on peut étendre la partition directement à partir de Windows et de sa console de gestion des disques (visible ci-dessus).

Éteignez votre machine, puis changer l'ordre de boot (la procédure peut varier en fonction des hyperviseurs. chez VMware, il suffit de presser rapidement sur "echap") afin de pouvoir choisir le périphérique de démarrage. Ici, il faut sélectionner le lecteur CD/DVD virtuel pour démarrer sur l'image ISO.

Vous pouvez démarrer Gparted Live (première option).

Suite au démarrage de GParted, nous voici donc sur l'interface principale de cet outil. Comme vous pouvez le constater, la VM en l'état se compose de :

  • 1 disque dur dont la taille totale est de 80 Go (/dev/nvme0n1) .
    • 4 partitions configurées et une partition "fantôme" qui n'est pas initialisée.
      • /dev/nvme0n1p1 - EFI system partition (100 Mo)
      • /dev/nvme0n1p2 - Microsoft reserved partition (16 Mo)
      • /dev/nvme0n1p3 - Basic Data Partition (59,40 Mo)
      • /dev/nvme0n1p4 - Partition de récupération (498 Mo)
      • Une partition "fantôme" qui n'est pas allouée (20 Go), espace disque libre si vous préférez

C'est cette dernière qui va nous intéresser (rectangle gris - non alloué 20.00 Gio).

Pour procéder à l'extension de la partition principale de l'OS (identifié /dev/nvme0n1p3 par GParted), nous devons déplacer la partition "fantôme" grise à côté de la partition principal /dev/nvme0n1p3. Sans cette opération, il est impossible de fusionner deux partitions. C'est une condition sine qua non.

Pour ce faire, clique droit sur la petite partition (séparant les deux autres) > Redimensionner/Déplacer et bougez le curseur de la gauche vers la droite.

Cela doit ressembler à la capture ci-dessous. Une fois que cela est fait, cliquez sur "Redimentionner/Déplacer".

Igniorez ce message pour le moment, nous les remettrons (les partitions) en place lorsque nous aurons fini la fusion entre nos deux partitions.

Comme le montre l'image ci-dessous, la partition "fantôme" est maintenant collé à notre partition principale. C'est à partir de cette étape que vous pouvez l'étendre. Clique droit sur la partition (dans mon cas /dev/nvme0n1p3) puis choisissez "Redimensionner/Déplacer". Élargissez celle-ci de la gauche vers la droite via le curseur ">" (noir).

Dès lors, cliquez sur Redimensionner/Déplacer.

Comme vous pouvez l'observer ci-dessous, notre partition /dev/nvme0n1p3 est passé de 59,40 Go à 79,40 Go. Maintenant, nous devons redéplacer la partition /dev/nvme0n1p4 (496 mo) à son emplacement original afin que notre machine puisse booter correctement. Sélectionner cette partition et cliquez sur Redimensionner/Déplacer.

Décalez de la droite vers la gauche la partition de telle sorte que le compteur "Espace libre précédent" passe de 1 à 0. Puis, validez les changements.

De nouveau, nous obtenons le même "warning". Ignorez-le.

Bien, nous avons fini de faire "joujou" avec la table des partitions. Il faut maintenant appliquer les changements en cliquant sur la coche verte.

Une fois que les opérations sont terminées, redémarrez le système, en réduisant la fenêtre et en ouvrant un terminal. Saisissez la commande "reboot".

Démontez le fichier ISO depuis les paramètres de la VM avant de continuer. Cela est nécessaire seulement si vous avez changé manuellement l'ordre du boot.

Suite au redémarrage de la VM Windows, si je me rends dans un Explorateur de fichier, je constate que ma partition C: a bien été étendue.

IV. VM Linux : augmenter la taille de la partition principale

Ici, pas besoin de booter sur l'ISO GParted, vous pouvez utiliser cet outil directement depuis le système d'exploitation Linux. Si vous n'avez pas déjà installé GParted, procédez à son installation via votre gestionnaire de paquets :

sudo apt install gparted

Nous voici donc sur l'interface de GParted. Comme vous pouvez le constater, la VM en l'état se compose de :

  • 1 disque dur qui a une taille totale de 80 Go environ (/dev/sda) .
    • 4 partitions configurées, dont une "sous-partition" aussi appelée partition logique*.
      • /dev/sda1 - EFI system partition (512 mo)
      • /dev/sda2 - Partition principale
        • /dev/sda5 - sous-partition de /dev/sda2 qui stocke le système de fichiers d'Ubuntu
      • Une partition "fantôme" correspondante à l'espace disque non alloué (20 Go)

C'est cette dernière qui va nous intéresser (rectangle gris - non alloué 20.00 Gio).

Note : si vous utilisez LVM, la procédure sera différente puisque vous pouvez ajuster directement les volumes logiques dans LVM.

Pour procéder à l'extension de la partition principale de l'OS (identifié /dev/sda5 par GParted), nous devons dans un premier temps étendre la partition "père" /dev/sda2. Sans cette opération, il est impossible de fusionner deux partitions.

Ici, il n'y a pas besoin de déplacer de partition étant donné que la partition stockant le système est adjointe à la partition "fantôme".

Clic droit sur la partition "parente" puis "Resize/Move" (oui on passe du français à l'anglais :p).

Déplacez le curseur afin qu'il englobe la zone grise afin d'englober l'espace disque libre dans la nouvelle taille de partition.

Et cliquez sur "Resize/Move".

Dès lors, il nous est possible d'étendre la partition "enfante" (sous-partition) /dev/sda5.

Déplacez le curseur afin qu'il englobe la zone grise.

Et cliquez sur "Resize".

Il nous reste plus qu'a appliquer les modifications en cliquant sur la coche verte du menu principal.

Dès que le processus est terminé, vous pouvez vérifier que l'extension de la partition système a bien eu lieu en saisissant la commande suivante :

df -h /

V. Conclusion

En conclusion, augmenter la taille des disques de vos machines virtuelles peut s'avérer être une tâche importante pour éviter les problèmes de stockage et garantir la performance de vos applications. Cependant, cette opération peut être délicate et nécessite de prendre certaines précautions pour éviter la perte de données. N'oubliez pas de sauvegarder vos données avant de procéder à toute modification du disque et de suivre les bonnes pratiques de sécurité pour garantir l'intégrité de vos données.

author avatar
Geoffrey Sauvageot-Berland Ingénieur Cybersécurité
Ingénieur diplômé par l’état en Informatique et Cybersécurité. Généraliste, à l'origine administrateur systèmes et réseaux, j’occupe actuellement un poste d’auditeur en sécurité offensive. J’apprécie également la programmation/automatisation. Fondateur du blog : "Le Guide du SecOps", anciennement "Le Guide du SysOps"
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.