Так как информации мало, могу предположить.
При создании виртуальной машины были созданы динамические диски (или использовалась аналогичная технология у LVM), когда создаваемый диск большого размера физически занимает меньше места, именно столько, сколько записей было сделано виртуальной машиной. Точно так же будет вести себя диск, размещенный в файле с поддержкой sparse files - когда кластеры, занимаемые файлом, пока в них не была произведена запись, не занимают реально место (только в метаданных информация о них)
Но именно в контексте дисков виртуальных машин этот подход имеет недостаток - место на диске увеличивается но не уменьшается, т.е. когда виртуальная машина удаляет файл, с реальным местом на диске ничего не происходит, и при создании нового файла (по другому адресу) реальное место на диске будет продолжать тратиться, и возможна ситуация, когда постоянно создавая и удаляя файл внутри виртуальной машине, место, которое занимает диск будет увеличиваться до реального размера диска, выбранного при создании машины (на самом деле это зависит от файловой системы на диске внутри виртуальной машины, планирование выбора следующего места для нового файла не гарантирует, что это будет новое а не место удаленного файла, например cow-файловые системы типа zfs/btrfs/xfs этому более подвержены).
Погуглил, оказывается VIrtualBox или Hyper-v поддерживают
trim как раз для освобождения места, ну и конечно есть команды для вакуумирования этого освободившегося места, ищи в документации твоей виртуальной машины.