Somewhat akin to this [question](https://superuser.com/questions/92204/dynamic-sizing-resizing-of-virtual-machine-storage-space) I asked on superuser, and this one for [Hyper-V](https://serverfault.com/questions/25738/how-to-reduce-virtual-machine-disk-size-hyper-v), after deleting files from a VM, how can the virtual disks be resized back downwards?

For example, perhaps the VM has 40GB of free space. The virtual disk was setup to allocate on-demand, so it's actual size on the SAN is, say, 3.4 GB. 

Then all of the installation ISOs for CentOS, Slackware, and Ubuntu are downloaded to create a local mirror.

After some period of time, unneeded ISOs are deleted, bringing the VM's free space back to 23GB.

How can the virtual disk that was expanded as needed be reshrunk to a minimal size?

Is that even a worth-while consideration?