Réduire la taille des VHDX
Tous les utilisateurs de VHDX ont déjà rencontré ce problème. La taille du VHDX augmente avec le remplissage du disque ce qui constitue le point fort de la technologie. Malheureusement, l’inverse n’est pas réciproque. Je vais vous expliquer que faire.
A propos des VHDX
Le VHDX est l’évolution du VHD. Parmi les nombreux avantages, le plus important pour moi réside dans le fait que la taille du fichier est proportionnelle au volume de données contenu dans le disque virtuel. Dans la pratique, un VHDX vide formaté en NTFS occupe 4Mo. A partir de la, chaque fichier vient faire grossir la taille du VHDX. Maintenant, c’est là que c’est fort gênant, si l’on re-format le disque virtuel, le VHDX va continuer d’occuper le même espace. Dynamiquement, il ne peut que grossir, jamais se réduire seul. Je vais vous montrer comment réduire facilement l’occupation sur le disque via un outil Windows très connu : « diskpart ».
Solution
Attention : on ne peut pas redimensionner le fichier VHDX si ce dernier est utilisé par un système d’exploitation. Il faut donc arrêter la machine virtuelle qui l’utilise ou détacher le disque de l’OS. L’opération est par contre rapide, quelques minutes par To.
On commence par lancer par lancer une console cmd puis diskpart :
Maintenant, on va dire à notre outil sur quel disque virtuel on veut travailer, puis on attache le disque :
Nous allons procédé à la défragmentation du disque virtuel. Personnellement, j’ai fait le test avec et sans, la différence n’est pas énorme mais on gagne effectivement quelques précieux mégaoctets avec la défragmentation.
Maintenant on retourne sur diskpart, on redonne à l’outil le chemin vers le VHDX puis nous allons l’attacher en mode lecture seule :
Dernière étape (toujours avec diskpart), on compact le fichier puis on détache le disque virtuel avant de sortir de diskpart.
Dans mon cas, j’ai travaillé sur un VHDX contenant une base Exchange 2016 de 189 Go. Suite à de nombreuses opérations sur la base et les fichiers de journaux, le VHDX atteignait presque 850 Go. Le compactage a duré environ 3 minutes et je suis arrivé à un fichier de 240 Go. Mission réussie.
Une petite correction s’impose. 4 Mo n’est pas la taille d’un VHDX formaté en NTFS, c’est un VHDX vierge, sans partition.
Super travail et merci
Bonjour,
Malheureusement je n’arrive pas à faire fonctionner la défragmentation comme indiqué dans votre exemple.
Après avoir effectué exit dans diskpart je ne peux lancer la commande defrag /o /v e: pour mon cas.
J’obtiens l’erreur, le volume donné est actuellement verrouillé.
Comment remédier à ce problème.
Merci
Bonjour,
Il faut vous être sur que le disque virtuel n’est pas utilisé par autre chose sur la machine (Hyper-V ou autre).
Il faut également personnalisé la lettre. Dans mon exemple X: mais c’est peut-être autre chose pour vous.