Beim Löschen von Dateien werden auf dem Datenträger die Daten nicht sofort unwiederbringlich entfernt. Vielmehr wird der Bereich, auf denen die Dateien gespeichert waren als frei gekennzeichnet – also zum Überschreiben freigegeben. Dies führt unter anderem bei virtuellen Festplatten dazu, dass die dynamischen Datenträger anwachsen und Speicher auf dem Host in Anspruch nehmen.
Vorbereitend zur Verkleinerung der virtuellen Festplatten sollte man daher den freien Speicher löschen, bzw. den leeren Speicherplatz mit Nullen überschreiben.
Mit sdelete den leeren Speicherplatz mit Nullen überschreiben
Bevor wir eine virtuelle Festplatte verkleinern können, sollte der leere Speicherplatz innerhalb der virtuellen Maschine komplett mit Nullen überschrieben werden. Die Komprimierung ließe sich zwar auch ohne diesen Schritt anstoßen, wäre aber bei Weitem nicht so effektiv. Ein Tool, mit dem dieser Vorgang schnell und sicher erfolgen kann ist „sdelete“ (Sysinternals).
SDelete ist ein kleines Programm, welches über die Kommandozeile gestartet werden kann. Mit dem Schalter „/z“ bewirkt man das Überschreiben des leeren Speicherplatzes mit Nullen. Die Verwendung von sdelete ist für die vorhandenen Daten unkritisch. Es werden keine vorhandenen Daten gelöscht oder unbrauchbar.
Beim Bereinigen ist Geduld gefragt
Vorsichtig sollte man allerdings bei produktiven Servern mit Datenbanken sein. Bei dem Vorgang des Überschreibens legt sdelete eine Datei an, welche zum Schluss für einen kurzen Moment den kompletten Speicherplatz in Anspruch nimmt. Wer also von unternehmenskritischen Servern die virtuelle Festplatte verkleinern möchte, sollte diese entweder offline verkleinern oder zuvor alle wichtigen Dienste und Anwendungen beenden.
Je nach verfügbarem Speicherplatz dauert der Prozess je Partition wenige Minuten bis Stunden. In der Eingabeaufforderung steht der Prozess recht schnell bei 100% und es kommen bereits einige Zweifel auf, ob überhaupt noch etwas passiert. Man kann aber sehr leicht an dem immer kleiner werdenden freien Speicherplatz erkennen, dass die Anwendung noch arbeitet.
Nach Abschluss der Aktion wird dies in der Eingabeaufforderung auch angezeigt. Hier ist durchaus Geduld angesagt, aber es lohnt sich. Nachdem der leere Speicherplatz mit Nullen überschrieben wurde, kann z.B. unter Hyper-V die virtuelle Festplatte mittels Optimize-VHD komprimiert werden.
Freier Speicher in Speichervirtualisierung (z.B. DataCore)
Auch in der Speichervirtualisierung ist sdelete hilfreich. So gibt es z.B. in DataCore die Option „Reclaim Disk Space“ oder die „Auto-Reclamation“ welche nach ungenutztem Speicherplatz sucht und diesen wieder dem Disk Pool zur Verfügung stellt. Auch hierbei werden die besten Ergebnisse erzielt, wenn der leere Speicherplatz zuvor mit Nullen überschrieben wurde (zeroed-out space).
Ebenfalls interessant:
Dieser Artikel ist wie alle anderen auf dieser Seite kostenlos für Dich und ich hoffe, ich konnte Dir weiterhelfen. Wer möchte, kann diesem Blog eine kleine Aufmerksamkeit in Form einer kleinen Spende (PayPal) oder über die Amazon Wunschliste zukommen lassen.
Hinterlasse einen Kommentar