Vorhandene Festplatte in der VirtualBox bändigen

Hier möchte ich kurz beschreiben, wie man seinen VirtualBox Windows 7 Virtualbox Disk Images (VDI) Container verkleinern und vergrößern kann. Mit verkleinern ist hier die Inanspruchnahme des Fesplattenplates des Gastsystemes, auf dem Hostsystem, gemeint.

Speicherplatz gewinnen auf dem Hostsystem
Diese Beschreibung bezieht sich auf dynamische VDI Container, welche häufig genutzt werden. Viele merken, dass mit der Zeit der Container immer größer wird, obwohl die Nutzdaten nicht im gleichen Maße zunehmen. Grund hierfür ist, dass das Gastsystem die Daten verteilet in den Container schreibt. Somit stehen Datenblöcke auch im hinteren Teil des Containers.
Mit den folgenden Schritten konnte ich meine Windows 7 VirtualMaschine (VM) bzw. VDI Container um ca. 10 GB verkleinern.

  1. Windows VM starten
  2. Speicherplatz gewinnen: Parpierkorb leeren, alte Installationsdateien löschen, Datenträgerbereinigung durchführen, …

    Ggf. Installationsdateien des Windows 7 Service Packs (WinSxS Ordner) löschen. Achtung: damit lässt es sich nicht mehr deinstallieren. Folgenden Befehl mit Administratorrechten in der Eingabeaufforderung ausführen.

    DISM.exe /Online /Cleanup-Image /spsuperseded
  3. Festplatte mit dem Windows Standard Tool / Start / Zubehör / Systemprogramme / Defragmentierung oder z.B. MyDefrag defragmentieren
  4. Freien Speicherplatz mit Nullen überschreiben. Hier für kann man SDelete
    sdelete -z

    oder nullfile nutzen

  5. Windows herunterfahren
  6. Im Host Terminal folgenden Befehl ausführen
    VBoxManage modifyvdi IMAGE_NAME.vdi --compact
    • Benutzt man beispielsweise ein anderes Image-Format, so lässt sich diesen über die Terminal transformieren.
      VBoxManage clonehd --format vdi ORIGINAL.vmdk CONVERTED.vdi

Vergrößern
Wenn man beim Anlegen der VM doch die Festplattengröße zu gering gewählt hat oder man später keine zweite Festplatte hinzufügen möchte, kann man seinen Windows 7 VDI Container wie folgt vergrößern.

  1. Windows 7 Gastsystem herunterfahren
  2. Im Host Terminal öffnen, in den Ordner navigieren wo der VDI Container liegt und folgendes ausführen
    VBoxManage modifyhd IMAGE_NAME.vdi --resize 15000

    Hinweis: die resize-Angabe erfolgt in Megabytes und gibt die neue maximale Größe an.

  3. Windows 7 Gast System wieder starten und die neue Festplattengröße mitteilen
    • / Start / Datenträgerverwaltung / Festplattenpartitionen erstellen und verwalten
    • Festplatte selektieren / Volumes erweitern… / leeren Speicherplatz hinzu
    • Noch einmal auf weiter klicken und schon ist der neue Speicherplatz dynamisch eingebunden