Dieser Artikel ist bereits über 3 Jahre alt. Die Inhalte sind wahrscheinlich bereits überholt und nicht mehr aktuell.

In diesem kurzen Artikel erfahren Sie, wie Sie die tatsächliche Dateigröße einer virtuellen Festplatte (in Form einer .vdi-Datei auf dem Host-System) einer virtuellen Maschine in VirtualBox verkleinern können.

Das nachfolgende Verfahren funktioniert nur, wenn Sie die Funktion “dynamisch alloziert” bei der Erzeugung der virtuellen Festplatte ausgewählt haben. Zudem sollten keine Sicherungspunkte für die VM existieren, da ansonsten der freigeräumte Speicherplatz weiterhin in Form der Snapshotdaten gespeichert bleibt.

Vorgehen

Abhängig von dem verwendeten Gast-Betriebssystem gibt es hier zwei Wege.

Windows-Gast

Unter Windows sollten Sie zunächst eine Defragmentierung starten und anschließend das Tool SDelete von hier herunterladen und mit dem Befehl sdelete.exe C: -z freien Speicherplatz schaffen. Dabei ist C: natürlich durch die zu verwendende Partition zu ersetzen.

Linux-Gast

Unter Linux wechseln sie durch das Kommando telinit 1 in den Single-User-Mode, hängen die Partition mittels mount -o remount,ro /dev/sda1 als Read-Only ein und schaffen dann durch ein zerofree -v /dev/sda1 freien Speicherplatz. Dabei ist /dev/sda1 natürlich durch die zu verwendende Partition zu ersetzen.

Host

Anschließend muss die VM beendet werden und auf die Kommandozeile des Host-Systems gewechselt werden. Dort wird die eigentliche Festplatten-Datei nun durch das VBoxManage-Tool verkleinert: vboxmanage modifyhd GuestHDD.vdi --compact

Anschließend ist die Datei nun z.B. für Backup-Zwecke verkleinert und die VM kann erneut gestartet werden.