Table des matières

WSL - redimensionner un disque VHD

Si il est relativement facile d'augmenter un disque WSL (c'est automatique); l'inverse, comme toujours, n'est pas si simple.

Quick commands

quelques commandes bien pratiques:

liste des distributions installées

PS C:\Users\Frater> wsl --list -v
  NAME      STATE           VERSION
* Ollama    Stopped         2
  Debian    Stopped         2

Stopper les VMs

PS C:\Users\Frater> wsl --shutdown

Connaitre l'usage disque

PS C:\Users\Frater> wsl --system -d ollama df -h /mnt/wslg/distro
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdc       1007G   35G  922G   4% /mnt/wslg/distro

Le résultat précise:

localiser le fichier vhdx

PS C:\Users\Frater> (Get-ChildItem -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | Where-Object { $_.GetValue("DistributionName") -eq 'ollama' }).GetValue("BasePath") + "\ext4.vhdx"
\\?\D:\wslStorage\ollama\ext4.vhdx

la localisation du fichier est importante, car c'est CE fichier que nous allons modifier.

Accéder au volume

Veuillez noter que les volumes VHD doivent être accessible en mode exclusif par DISKPART.

Veillez donc a stopper toutes les VM.

Conformément aux préconisations de Microsoft; nous allons utiliser DISPART pour modifier notre disque VHDX.

PS C:\Users\Frater> diskpart

Microsoft DiskPart version 10.0.19041.3636

Copyright (C) Microsoft Corporation.
computer name : SUPREMAE

DISKPART>

nous allons sélectionner notre disk :

DISKPART> select vdisk file=D:\wslStorage\ollama\ext4.vhdx

DiskPart a correctement sélectionné le fichier de disque virtuel.

nous pouvons consulter les détails du volume:

DISKPART> detail vdisk

ID du type de périphérique : 0 (Inconnu)
ID du fournisseur : {00000000-0000-0000-0000-000000000000} (Inconnu)
État : Ajouté 
Taille virtuelle : 1024 G octets
Taille physique :   62 G octets
Nom de fichier : D:\wslStorage\ollama\ext4.vhdx
Est enfant : Non
Nom de fichier parent :
N° de disque associé : introuvable.

Réduire la taille du volume

Veuillez noter que ces opérations prennent du temps et que la machine linux ne sera pas disponible durant celles-ci.

Dans l'utilitaire dispart, une fois le volume sélectionné, vous avez la possibilité d'utiliser les commandes compact ou shrink pour réduire la taille d'un volume; dans le cas d'un VHD, vous ne pouvez utiliser QUE la commande compact.

DISKPART> compact vdisk

   100 pour cent effectués

DiskPart a correctement compacté le fichier de disque virtuel.