VirtualBox VM shrinken

Viele entscheiden sich bei VirtualBox VMs für den Einsatz von dynamischen Festplatten. Diese haben den Vorteil, dass nicht sofort der gesamte Speicherplatz allokiert werden muss. Die Festplatten wachsen bei Bedarf bis die maximale Größe erreicht ist. Sollte sich der tatsächliche Speicherbedarf wieder verringern, schrumpft die virtuelle Festplatte jedoch nicht automatisch, sondern behält die ursprüngliche maximale Größe. Um den Speicherbedarf zu minimieren, gibt es die Möglichkeit, virtuelle Festplatten nachträglich zu verkleinern oder zu shrinken. Dazu muss der freie Speicherplatz zuerst mit Nullen überschrieben werden, um ein optimales Ergebnis zu erzielen.


Für Microsoft Windows VMs gibt es dazu das Tool „sdelete“ von Marc Russinovich, welches über Microsoft Technet zur Verfügung gestellt wird. https://technet.microsoft.com/de-de/sysinternals/bb897443.aspx Unter Linux sind keine zusätzlichen Tools notwendig. Die Festplatte lässt sich direkt mit Bordmitteln bearbeiten. Bevor „sdelete“ unter Windows ausgeführt wird, sollte die Festplatte defragmentiert werden. Danach kann die virtuelle Festplatte über die Kommandozeile mit Nullen überschrieben werden.

sdelete -z c:

vbox_shrinken01

Der Vorgang nimmt je nach Plattengröße und darunterliegendem Speicher (HDD oder SSD) einige Minuten in Anspruch. Um die virtuelle Festplatte unter Linux mit Nullen zu überschreiben, lässt sich folgender Befehl ausführen.

sudo dd if=/dev/zero of=/zerodisk bs=4M

vbox_shrinken02

Der Befehl füllt die komplette Festplatte mit der Datei „zerodisk“. Um den Speicherplatz nach der Aktion wieder freizugeben, muss die Datei gelöscht werden.

sudo rm /zerodisk

Nach dem „Nullen“ der Festplatte, kann die VM heruntergefahren werden, um den Shrink Vorgang zu starten. Dazu wird in einem Terminal bzw. einer Kommandozeile folgender Befehl ausgeführt.

Windows:

vboxmanage.exe modifyhd C:\Users\VMs\debian.vdi –compact

Linux:

vboxmanage modifyhd /mnt/daten/VMs/Linux/Debian/debian.vdi –compact

vbox_shrinken03

Die Pfade zu den virtuellen Festplatten müssen in den Beispielen noch an die eigene Umgebung angepasst werden. Ist der Vorgang abgeschlossen, sollten die virtuellen dynamischen Festplatten wieder weniger Speicherplatz als zuvor einnehmen.