Il y a 2 possibilités:

soit le disque est déjà en taille dynamique. Du coup, il suffit d'éxécuter la commande (sous shell):

vboxmanage modifyhd ‘/home/user/dossier-de-la-VM/disque.vdi’ –resize 30000

pour retailler à 30Go.

Si le disque est de taille fixe, alors on créé un nouveau disque, de la taille que l'on souhaite au final,puis on copie l'ancien disque vers le nouveau:

vboxmanage clonehd ‘/home/user/dossier-de-la-VM/disque.vdi’ --existing ‘/home/user/dossier-de-la-VM/nouveaudisque.vdi

puis retirer l'ancien disque de la VM et la lancer avec le nouveau disque.

Il faudra juste encore après redimensionner la partition avec l'outil natif de windows ou gparted sous linux.

Pour info, il n'est pas possible de redimmensionner le disque à partir de windows xp. Du coup, il faut attacher le disque à une VM linux et redimensionner le isque avec gparted..

 Mise à jour 2021:

voir https://www.numetopia.fr/comment-modifier-la-taille-dun-disque-dur-virtuel-dans-virtualbox/

Utiliser directement le gestionnaire de media, faire propriété et redimensionner (il faut que la machine soit éteinte et non gelée)

Ensuite, dans windows, faire une Gestion des disque pour étendre le volume

et GParted dans linux