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 leeren Speicherplatz mit Nullen überschreiben.

sdelete – 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).

Leeren Speicherplatz mit Nullen überschreiben

Der Schalter /z bewirkt, dass der freie Speicherplatz mit Nullen überschrieben wird. Das ist Voraussetzung um eine VHD verkleinern zu können.

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. 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).

René Albarus

René Albarus

Ich heiße René Albarus und bin seit 2002 beruflich im Bereich der Systemadministration tätig. Da auch ich einen Teil meines Wissens IT-Blogs im Internet verdanke, ist es für mich selbstverständlich, dass ich Lösungsansätze und Anleitungen in diesem Blog weitergebe.
René Albarus

Letzte Artikel von René Albarus (Alle anzeigen)

0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.