-
Was sind VMDK-Dateien?
-
So verkleinern Sie eine Festplattenpartition im Gastbetriebssystem
-
Vorbereiten der Festplatte: Freien Speicherplatz mit Nullen füllen
-
Methode 1: Verkleinern einer VMDK-Festplatte durch manuelles Bearbeiten der VMDK-Beschreibungsdatei
-
Methode 2: Verkleinern einer VMDK-Festplatte mithilfe von PowerShell und PowerCLI-Automatisierung
-
Methode 3: Verkleinern einer VMDK-Festplatte mithilfe des Tools „vmware-vdiskmanager“ (nur Workstation/Fusion)
-
Methode 4: Verkleinern einer VMDK-Festplatte mit VMware vCenter Converter Standalone
-
VMware-VMs mit Vinchin sichern
-
VMDK-Verkleinerung – Häufig gestellte Fragen
-
Zusammenfassung
Virtuelle Maschinen (VMs) bilden die Grundlage der meisten modernen IT-Umgebungen. Doch was geschieht, wenn Ihre virtuelle Festplatte (VMDK) zu groß wird? Im Gegensatz zu physischen Festplatten reicht es nicht aus, Dateien innerhalb des Gastbetriebssystems zu löschen, um auf Infrastrukturebene Speicherplatz einzusparen. Das Verkleinern einer VMDK-Datei ist ein sorgfältiger Prozess, der mehrere Schritte sowohl innerhalb der VM als auch auf Ihrer Hypervisor-Plattform erfordert. In dieser Anleitung erfahren Sie, was VMDK-Dateien sind, wie Sie Partitionen im Gastbetriebssystem sicher verkleinern, wie Sie Festplatten für das Verkleinern vorbereiten, indem Sie den freien Speicherplatz mit Nullwerten überschreiben, und wie Sie die tatsächliche Größe der VMDK-Datei mithilfe unterstützter Methoden – manuell oder automatisiert – reduzieren.
Was sind VMDK-Dateien?
Eine Virtual Machine Disk (VMDK) ist das von VMware entwickelte Format für virtuelle Festplatten, das in Produkten wie ESXi oder Workstation verwendet wird. Stellen Sie sich diese Datei als Behälter vor, der sämtliche Daten, Partitionen und Dateisysteme einer virtuellen Maschine enthält – ähnlich wie eine physische Festplatte alle Daten auf einem echten Server speichert.
Jede virtuelle Festplatte besteht aus mindestens zwei Dateien:
Die Beschreibungsdatei (
vmname.vmdk) enthält Metadaten zu Geometrie (Größe), Bereitstellungsart (dünn oder dick), Eltern-Kind-Beziehungen (für Snapshots) und mehr.Die Flat-Datei (
vmname-flat.vmdk) speichert rohe Datenblöcke – die eigentlichen Inhalte, die vom Betriebssystem der VM geschrieben wurden.
Dünne Bereitstellung von Festplatten verwendet eine interne Zuordnung namens „Grain-Tabellen“, um nachzuverfolgen, welche Blöcke Daten enthalten und welche leer oder mit Nullen aufgefüllt sind. Bei dick bereitgestellten Festplatten wird der gesamte Speicherplatz unabhängig von der tatsächlichen Nutzung von vornherein reserviert.
Wenn Sie Dateien innerhalb des Betriebssystems Ihrer VM löschen – auch bei Thin-Disk-Dateien – wird der zugrunde liegende Datastore diesen Speicherplatz nicht sofort freigeben. Dies liegt daran, dass nur das Gastbetriebssystem weiß, welche Datenblöcke tatsächlich nicht mehr verwendet werden; aus Sicht von VMware können diese Blöcke weiterhin gültige Daten enthalten, bis sie ausdrücklich als ungültig markiert werden.
So verkleinern Sie eine Festplattenpartition im Gastbetriebssystem
Bevor Sie die VMDK-Datei selbst verkleinern, verkleinern Sie stets zunächst die Partitionen innerhalb Ihres Gastbetriebssystems. Dadurch wird sichergestellt, dass beim Ändern der Größe auf der Speicherebene keine laufenden Daten abgeschnitten werden.
Die Verkleinerung von Partitionen teilt Ihrem Betriebssystem mit, welche Bereiche der Festplatte nicht mehr benötigt werden, sodass diese später sicher während der VMDK-Verkleinerung entfernt werden können.
Vor Beginn:
Stellen Sie sicher, dass Sie eine vollständige Sicherung haben.
Überprüfen Sie die Partitionsausrichtung mithilfe von Tools wie
fdisk -lunter Linux oderwmic partition get BlockSize, StartingOffsetunter Windows.Defragmentieren Sie Volumes, wenn möglich – insbesondere unter Windows –, um unverschiebbare Dateien von den Partitionsenden zu entfernen.
Für Linux-Root-Partitionen oder stark ausgelastete Volumes: Planen Sie eine geplante Ausfallzeit ein, damit Sie bei Bedarf von Live-Medien booten können.
Für Windows-Gäste
Verwenden Sie die integrierte Datenträgerverwaltung:
1. Melden Sie sich bei Windows an.
2. Klicken Sie mit der rechten Maustaste auf Dieser PC oder Mein Computer, wählen Sie Verwalten und dann Festplattenverwaltung.
3. Klicken Sie mit der rechten Maustaste auf Ihre Zielpartition und dann auf Lautstärke verkleinern.
4. Geben Sie den gewünschten Betrag für die Verkleinerung ein – beachten Sie, dass die maximal verfügbare Größe von der Position nicht verschiebbarer Dateien wie „pagefile.sys“ abhängt.
5. Änderungen bestätigen; auf Abschluss warten.
Falls „Volume verkleinern“ weniger Speicherplatz als erwartet anbietet, weil Dateien nicht verschoben werden können:
Führen Sie
defrag /X /H C:in der Eingabeaufforderung als Administrator ausVersuchen Sie es nach der Defragmentierung erneut, die Partition zu verkleinern
Für Linux-Gäste
Linux bietet je nach Dateisystemtyp mehrere Tools an:
1. Starten Sie von der GParted-Live-CD/ISO, wenn Sie die Root- oder eingehängten Partitionen verkleinern.
2. Wählen Sie die Zielpartition aus; wählen Sie die Option Größe ändern/verschieben.
3. Verschieben Sie den Schieberegler für die Größe oder geben Sie den Wert direkt ein; übernehmen Sie die Änderungen.
4. Für ext-basierte Dateisysteme: Nach der Größenanpassung der Partition mit GParted oder parted führen Sie resize2fs /dev/sdXN aus, wobei X der Gerätebuchstabe bzw. -nummer ist.
5. Nach Abschluss neu starten, um in den normalen Modus zu wechseln
Für XFS: Eine Verkleinerung wird nicht nativ unterstützt – Sie müssen die Daten sichern, ein kleineres Dateisystem neu erstellen und anschließend die Daten wiederherstellen.
Nach erfolgreicher Verkleinerung sehen Sie am Ende der Festplatte nicht zugewiesenen Speicherplatz – eine Voraussetzung, bevor Sie später die tatsächliche VMDK-Größe reduzieren.
Vorbereiten der Festplatte: Freien Speicherplatz mit Nullen füllen
Das Auffüllen des freien Speicherplatzes mit Nullen ist unerlässlich, bevor dünn bereitgestellte Festplatten komprimiert oder bestimmte Reduzierungswerkzeuge verwendet werden – dadurch werden nicht genutzte Blöcke gekennzeichnet, sodass VMware sie während des Klonens oder der Komprimierung als wiederverwendbar identifizieren kann.
Warum die Mühe? Wenn Sie Dateien innerhalb eines Betriebssystems löschen, werden diese lediglich als gelöscht markiert – sie werden nicht tatsächlich mit Nullen überschrieben – weshalb Hypervisoren zwischen „freien“ und „genutzten“ Sektoren nicht unterscheiden können, es sei denn, sie erhalten diese Information explizit über Null-Füll-Tools.
Freien Speicherplatz in Windows-Gästen auf Null setzen
Sie haben zwei Hauptmöglichkeiten:
1. Verwenden Sie das Tool „SDelete“ von Microsoft Sysinternals:
SDelete.exe herunterladen
Als Administrator Eingabeaufforderung öffnen
Ausführen:
  sdelete.exe -z C:
Dieser Befehl schreibt Nullen in alle freien Sektoren des Laufwerks C:.
2. Auf neueren Versionen (Windows 8 und höher):
PowerShell als Administrator öffnen
Ausführen:
  Optimize-Volume -DriveLetter C -ReTrim -Verbose
Dieser Befehl sendet TRIM-Hinweise, überschreibt jedoch nicht mit Nullen – er funktioniert am besten mit SSD-basierten Datenspeichern, die UNMAP-/TRIM-Befehle nativ unterstützen.
Freien Speicherplatz in Linux-Gästen nullen
Für ext-basierte Dateisysteme:
1. Falls offline/entfernt:
zerofree /dev/sdXN
2. Falls online/mounted (nicht für Produktionsumgebungen empfohlen):
dd if=/dev/zero of=zero.fill bs=1M || true && sync && rm zero.fill
Damit wird eine große temporäre Datei erstellt, die vollständig mit Nullen gefüllt ist, bis der Speicherplatz auf der Festplatte erschöpft ist; anschließend wird die Datei gelöscht, sodass nur noch nicht genutzte Sektoren mit Nullen überschrieben sind.
Stellen Sie stets sicher, dass ausreichend Arbeitsspeicherplatz vorhanden ist, bevor Sie diese Befehle ausführen!
Sobald die Partitionen verkleinert und der freie Speicherplatz innerhalb des Betriebssystems Ihrer VM auf Null gesetzt wurde, ist es an der Zeit, die zugrunde liegende VMDK-Datei selbst auf Infrastrukturebene tatsächlich zu verkleinern.
Die VMware vSphere Client-GUI ermöglicht eine direkte Erhöhung, aber keine direkte Verringerung der Festplattengröße! Sie müssen einen der nachfolgend beschriebenen manuellen oder automatisierten Ansätze verwenden:
Sichern Sie Ihre VM stets vor Änderungen in dieser Phase! Eine getestete Sicherung ist hier eine entscheidende Absicherung gegen Fehler.
Methode 1: Verkleinern einer VMDK-Festplatte durch manuelles Bearbeiten der VMDK-Beschreibungsdatei
Diese Methode bietet die größtmögliche Kontrolle, birgt jedoch ein erhebliches Risiko – führen Sie sie nur aus, wenn Sie sich mit dem direkten Arbeiten über die ESXi-Shell-Zugriffsoberfläche auskennen!
Verstehen Sie zunächst, dass jede Deskriptor-Datei eine RW-Zeile enthält, die die Gesamtanzahl der zugewiesenen 512-Byte-Sektoren angibt:
RW <sector_count> <type> "<flat_file>"
Schritte:
1. VM vollständig herunterfahren; sicherstellen, dass keine aktiven Snapshots vorhanden sind!
2. SSH-Verbindung zum ESXi-Host herstellen; zum entsprechenden Datenspeicherordner navigieren:
cd /vmfs/volumes/<datastore>/<VM_folder>
3. Sichern Sie sowohl die Deskriptor- als auch die Flat-Dateien:
cp vmname.vmdk backup_vmname.vmdk cp vmname-flat.vmdk backup_vmname-flat.vmdk
4. Bearbeiten Sie die Deskriptordatei mit vi/nano/etc.; suchen Sie die Zeile mit „RW“:
vi vmname.vmdk # Suchen Sie die Zeile mit „RW“ nahe der Dateispitze # Berechnen Sie die neue Sektoranzahl: gewünschte Größe in Byte / 512 # Beispiel für 20 GB: 20 × 1024 × 1024 × 1024 / 512 = 41 943 040 Sektoren # Ersetzen Sie den alten Wert durch den neuen und speichern Sie die Änderungen
5–6. Um nicht genutzte Kapazität physisch freizugeben, klonen Sie die Festplatte mithilfe von „vmkfstools“. Bei dieser Aktion werden nur belegte bzw. auf Null gesetzte Blöcke kopiert, sofern die Quellfestplatte thin provisioned war:
vmkfstools -i vmname.vmdk -d thin vmname_new.vmdk
7. Klonierte VM über die vCenter/ESXi-Web-Oberfläche registrieren (VM registrieren), wobei auf die aktualisierte .vmx-Konfigurationsdatei verwiesen wird
8. Einschalten und korrekte Funktion/Größe der Festplatte innerhalb der Gastumgebung überprüfen
Manuelle Änderungen können die gesamte VM beschädigen, wenn die Sektorberechnung falsch ist! Testen Sie diese zunächst gründlich außerhalb der Produktionsumgebung.
Methode 2: Verkleinern einer VMDK-Festplatte mithilfe von PowerShell und PowerCLI-Automatisierung
PowerCLI bietet Skriptautomatisierung, die insbesondere in größeren Umgebungen nützlich ist, in denen viele ähnliche Aufgaben wiederholt ausgeführt werden müssen.
Voraussetzungen:
Installieren Sie die neueste Version von PowerCLI
Stellen Sie sicher, dass WinRM aktiviert und zwischen dem Verwaltungsarbeitsplatz und den Gastsystemen erreichbar ist.
Installieren Sie VMware Tools in jeder Gast-VM, um eine ordnungsgemäße Ruhephase während der Momentaufnahmeerstellung/Sicherungen zu gewährleisten
Typischer Arbeitsablauf:
1. Gastpartition(en) über ein Skript neu dimensionieren – z. B. native Windows-Cmdlets remote aufrufen:
Invoke-Command –ComputerName $VMName –ScriptBlock { Resize-Partition ... }2. Ziel-VM herunterfahren; bestätigen, dass keine aktiven Momentaufnahmen mehr vorhanden sind
3. Das Skript stellt eine Verbindung über Connect-VIServer her, sichert die Deskriptoren, ändert die RW-Werte und löst die Migration/das Klonen aus:
Set-HardDisk –HardDisk $disk –CapacityGB $newSize –Confirm:$false # Oder manuell den Deskriptor bearbeiten und Move-HardDisk usw. aufrufen.
4. Registrierungs-/Herunterfahr-/Startreihenfolge wird programmgesteuert behandelt
Speichern Sie niemals Anmeldeinformationen im Klartext; verwenden Sie nach Möglichkeit SecureString-Objekte.
Vollständige Skriptbeispiele gibt es zahlreich im Internet – überprüfen Sie stets die Code-Sicherheit, bevor Sie Skripte von Drittanbietern ausführen.
Methode 3: Verkleinern einer VMDK-Festplatte mithilfe des Tools „vmware-vdiskmanager“ (nur Workstation/Fusion)
Falls Sie außerhalb eines Rechenzentrums arbeiten – beispielsweise bei Labor-, Test- oder Entwicklungsworkloads unter Workstation/Fusion – verwenden Sie das integrierte CLI-Dienstprogramm:
Hinweis: Nicht verfügbar und nicht unterstützt unter ESXi/vSphere-Hosts!
Schritte:
1. Entfernen Sie unnötigen Müll/Dateien im Gastkonto; leeren Sie den Papierkorb/den Papierkorb usw.
2. Den freien Speicherplatz gemäß dem vorherigen Abschnitt auf Null setzen.
3. Ziel-VM herunterfahren.
4. Auf dem Host-Computer ausführen:
vmware-vdiskmanager.exe -k "path_to_vmdk.vmdk"
Mit der Option -k werden alle Blöcke, die ausschließlich Nullen enthalten, freigegeben, wodurch die Gesamtgröße der Image-Datei reduziert wird.
Auf Linux-/Mac-Hosts gibt es möglicherweise keine direkte äquivalente Option; ziehen Sie stattdessen das Kopieren oder Ausdünnen in Betracht.
Methode 4: Verkleinern einer VMDK-Festplatte mit VMware vCenter Converter Standalone
Für Administratoren, die offiziell unterstützte GUI-Arbeitsabläufe suchen, bleibt vCenter Converter Standalone der sicherste Weg – insbesondere beim Verschieben produktiver Workloads.
Der Konverter führt Virtual-to-Virtual-Migrationen („V2V“) durch und erstellt eine neue Kopie in genau der vom Benutzer angegebenen Größe.
Wichtige Punkte:
Erfordert vorübergehend genügend freien Speicherplatz, um sowohl das Quell- als auch das Zielimage gleichzeitig zu speichern.
Die Quelle CBT („Changed Block Tracking“) sollte vor der Konvertierung deaktiviert werden.
Netzwerk-/IP-Konflikte können auftreten, wenn nach der Migration ohne Änderung der MAC-Adressen/IPs in dasselbe Subnetz bzw. dieselbe Umgebung geklont wird.
Anleitung:
1. Converter Standalone auf den Verwaltungsarbeitsplatz herunterladen/installieren.
2. App starten; Quell- und Ziel-Hosts entsprechend verbinden.
3. Quell-VM auswählen; Zielstandort/Speicherpool definieren.
4. Unter „Daten zum Kopieren“ > „Bearbeiten“ > „Volumina zum Kopieren auswählen“ die neuen, kleineren Größen pro Volumen festlegen.
5. Konvertierungsauftrag starten; Fortschritt und Protokolle genau überwachen.
6. Sobald der neue Instanzstart abgeschlossen ist, überprüfen Sie die Integrität der Anwendung und der Daten gründlich!
7. Original entfernen/deaktivieren, sobald zufriedenstellend.
VMware-VMs mit Vinchin sichern
Bevor Sie risikoreiche Vorgänge wie das Verkleinern von VMDKs durchführen, ist es unerlässlich, über zuverlässige Sicherungen zu verfügen – und hier zeichnet sich Vinchin als enterprisefähige Lösung aus, die in erster Linie für Virtualisierungsumgebungen wie VMware entwickelt wurde, daneben aber auch Hyper-V, Proxmox VE, oVirt/RHV/OLVM, XCP-ng/XenServer, OpenStack, ZStack sowie insgesamt mehr als fünfzehn gängige Plattformen unterstützt.
Vinchin bietet umfassende Schutzfunktionen, darunter endlos inkrementelle Sicherung für eine effiziente Langzeitspeicherung ohne wiederholte Vollsicherungen; fortschrittliche Technologien zur Deduplizierung und Komprimierung, die den Speicherbedarf minimieren; nahtlose plattformübergreifende V2V-Migration; feingranulare Wiederherstellungsoptionen bis hin zu einzelnen Dateien oder Ordnern; sowie geplante Strategien wie wiederholte Sicherungsaufträge – alles über eine intuitive Webkonsole verwaltet, die selbst bei großem Umfang einfach zu bedienen ist.
Sicherung einer VMware-VM in nur vier Schritten:
1. Wählen Sie Ihre Ziel-VMware-Virtualmaschine(n) aus;

2. Wählen Sie ein geeignetes Sicherungsspeicher-Repository aus;

3. Einstellungen für die Sicherungsstrategie konfigurieren;

4. Die Aufgabe einreichen.

Weltweit von Tausenden Kunden anerkannt – mit hohen Bewertungen auf branchenüblichen Bewertungsplattformen – bietet Vinchin eine voll funktionsfähige 60-tägige kostenlose Testversion, damit Sie seine Leistungsfähigkeit risikofrei aus erster Hand erleben können! Klicken Sie unten, um den Installer jetzt herunterzuladen und sichere Backups mühelos in Ihrer gesamten Umgebung bereitzustellen.
VMDK-Verkleinerung – Häufig gestellte Fragen
F1: Kann ich eine VMDK-Datei verkleinern, ohne die VM herunterzufahren?
Nein – Sie müssen die VM vollständig herunterfahren, bevor Sie einen Reduzierungsvorgang durchführen, um Risiken einer Beschädigung zu vermeiden.
F2: Was geschieht, wenn ich das Verkleinern der Partition innerhalb des Gastbetriebssystems überspringe?
Sie riskieren einen schweren Datenverlust oder dass Ihr System nicht mehr startfähig ist, da wichtige Strukturen während der Größenänderungsoperationen unerwartet abgeschnitten werden könnten.
F3: Wie überprüfe ich, ob mein VMDK thin oder thick provisioned ist?
Wählen Sie im vSphere Client die Ziel-VM aus > klicken Sie auf „EINSTELLUNGEN BEARBEITEN“ > erweitern Sie „FESTPLATTE“ > überprüfen Sie das Feld „BEREITSTELLUNGSTYP“, das dort angezeigt wird.
F4: Kann ich dick bereitgestellte, verzögert nullierte Festplatten verkleinern?
Nur indem sie zunächst mithilfe von Klon-Tools wie vmkfstools in ein dünnes Format konvertiert und anschließend mit herkömmlichen Komprimierungsmethoden fortgefahren wird.
F5: Warum zeigt meine verkleinerte VMDK-Datei im Datastore-Browser trotzdem ihre ursprüngliche Größe an?
Überprüfen Sie, ob die UNMAP-/TRIM-Unterstützung durchgängig vorhanden ist – vom Hypervisor bis zum Speicherarray – und führen Sie bei Bedarf eine manuelle Rückgabe mittels des Befehls „esxcli storage vmfs unmap“ durch.
Zusammenfassung
Die Verkleinerung einer VMDK-Datei erfordert sorgfältige Planung – von der Vorbereitung der Partitionen innerhalb der Gastsysteme bis hin zu sicheren Reduzierungsschritten außerhalb – und dies stets unter Einhaltung umfassender Sicherungsmethoden bei jedem einzelnen Schritt! Dank Vinchin, das im Hintergrund die Sicherungsaufgaben übernimmt, können Sie heute mit voller Zuversicht den Speicherplatz selbst in komplexen Unternehmensumgebungen optimieren.
Teilen auf: