30Jul

So verkleinern Sie eine VirtualBox Virtual Machine und geben Speicherplatz frei

Standardmäßig erstellt VirtualBox dynamische Festplatten, die im Laufe der Zeit beim Hinzufügen von Daten wachsen. Wenn Sie jedoch später Daten von der virtuellen Maschine löschen, werden Sie feststellen, dass die Festplatte nicht automatisch verkleinert wird. Sie können einen dynamischen Datenträger jedoch manuell mithilfe eines ausgeblendeten Befehls verkleinern.

Denken Sie daran, dass dadurch die Festplatte nur verkleinert wird, wenn sie größer ist und Sie seitdem Daten entfernt haben. Wenn Sie also gerade eine dynamische Festplatte erstellt haben, wird diese nicht verkleinert. Wenn Sie jedoch eine dynamische Festplatte erstellt, 10 GB Daten in diese heruntergeladen und anschließend diese 10 GB gelöscht haben, sollten Sie die Festplatte um etwa 10 GB verkleinern können.

Schritt 1: Sicherstellen, dass Sie eine dynamische Festplatte verwenden

Dieser Prozess funktioniert nur für dynamische Festplatten, die in der Größe wachsen und schrumpfen können. Dynamische Datenträger können beispielsweise eine bestimmte maximale Größe( beispielsweise 50 GB) aufweisen, sie werden jedoch nur dann tatsächlich auf diese maximale Größe erweitert, wenn sie so viele Daten enthalten. Festplatten mit fester Größe haben immer ihre maximale Größe.

Wenn Sie eine Festplatte mit fester Größe haben, die Sie verkleinern möchten, können Sie sie zuerst in eine dynamische Festplatte konvertieren und dann die folgenden Anweisungen befolgen. Wenn Sie beispielsweise eine Festplatte mit einer Größe von 50 GB und nur 20 GB Daten haben und diese in eine dynamische Festplatte konvertieren, sollten Sie die Größe des Speicherplatzes auf 20 GB reduzieren können.

Um zu überprüfen, ob eine Festplatte in VirtualBox dynamisch oder fest ist, klicken Sie mit der rechten Maustaste auf die virtuelle Maschine, die die Festplatte verwendet, und wählen Sie "Einstellungen".Klicken Sie auf die Registerkarte "Speicher" und wählen Sie die Festplatte aus. Sie sehen, welche Art von Datenträger neben "Details" angezeigt wird. Im folgenden Screenshot zeigt "Dynamisch zugewiesener Speicher" an, dass es sich um eine dynamische Festplatte handelt.

Schritt 2: Schreiben Sie Nullen auf die Festplatte in der virtuellen Maschine

Achten Sie darauf, alle Daten, die Sie nicht mehr benötigen, auf der Festplatte in der virtuellen Maschine zu löschen, um Platz zu schaffen, bevor Sie fortfahren. Löschen Sie nicht benötigte Dateien, deinstallieren Sie Programme, die Sie nicht mehr verwenden, und leeren Sie den Papierkorb. Dann müssen Sie diesen leeren Platz mit Nullen überschreiben.

Für Windows-Gastbetriebssysteme

Wenn Windows in der virtuellen Maschine installiert ist, sollten Sie die virtuelle Maschine jetzt hochfahren und ihre Festplatten defragmentieren. Suchen Sie in der virtuellen Maschine im Startmenü nach "Defragmentieren" und starten Sie das Tool "Defragmentierung" oder "Defragmentieren und Optimieren von Laufwerken".Wählen Sie die Festplatte, die Sie komprimieren möchten, und klicken Sie auf "Festplatte defragmentieren".

Nach Abschluss der Defragmentierung müssen Sie Nullen in den leeren Bereich der virtuellen Maschine schreiben. Wenn Sie Dateien löschen, werden die gelöschten Daten weiterhin auf der Festplatte gespeichert, sodass VirtualBox das Laufwerk nicht automatisch verkleinern kann. Wenn Sie jedoch Nullen über die gelöschten Dateien schreiben, sieht VirtualBox eine große Menge an Nullen - also leeren Speicherplatz - und kann die Festplatte komprimieren.

Laden Sie dazu das Dienstprogramm SDelete von Microsoft herunter. Extrahieren Sie die Datei sdelete.exe in einen Ordner auf Ihrem Computer.

Öffnen Sie ein Eingabeaufforderungsfenster.Öffnen Sie dazu das Startmenü, suchen Sie nach "Eingabeaufforderung" und starten Sie die Verknüpfung.

Wechseln Sie in das Verzeichnis mit der Datei sdelete.exe, indem Sie cd eingeben, die Leertaste drücken, den Pfad zum Verzeichnis eingeben und die Eingabetaste drücken. Achten Sie darauf, den Pfad in Anführungszeichen zu setzen, wenn er ein Leerzeichen enthält. Es sollte so aussehen:

cd "C: \ Pfad \ zu \ Ordner"

Wenn Sie beispielsweise die Datei sdelete.exe in den Download-Ordner Ihres Benutzerkontos extrahiert haben und Ihr Windows-Benutzername Bob ist, führen Sie den folgenden Befehl aus:

cd "C: \ Benutzer \ bob \ Downloads"

Um den Verzeichnispfad schnell einzugeben, geben Sie einfach cd in das Eingabeaufforderungsfenster ein, drücken Sie die Leertaste und ziehen Sie das Ordnersymbol aus der Adressleiste des Dateimanagers.

Führen Sie den folgenden Befehl aus:

sdelete.exe c: -z

Dadurch werden Nullen auf den gesamten freien Speicherplatz auf Laufwerk C: geschrieben. Wenn Sie ein sekundäres Laufwerk mit einem anderen Laufwerksbuchstaben in der virtuellen Maschine verkleinern möchten, geben Sie seinen Laufwerksbuchstaben anstelle von c: ein. Dafür wurde das Tool entwickelt. Wie die SDelete-Seite auf der Microsoft-Website feststellt, ist die Option -z "gut für die Optimierung virtueller Festplatten".

Sie werden aufgefordert, der Lizenzvereinbarung des Tools zuzustimmen, bevor Sie fortfahren. Klicken Sie einfach auf "Zustimmen".

Warten Sie, bis der Vorgang abgeschlossen ist. Wenn Sie fertig sind, fahren Sie Ihre virtuelle Maschine mit der Option "Herunterfahren" im Startmenü herunter. Sie sind nun bereit, es zu komprimieren.

Für Linux Gastbetriebssysteme

Wenn Linux in der virtuellen Maschine installiert ist - mit anderen Worten: ein Gastbetriebssystem von Linux anstelle eines Windows-Gastbetriebssystems -, können Sie den Defragmentierungsprozess überspringen und integrierte Befehle verwenden, um den freien Speicherplatz auf dem Laufwerk auf Null zu setzen. Wir werden hier Ubuntu als Beispiel verwenden, aber der Prozess wird auf anderen Linux-Distributionen ähnlich sein.

Dazu müssen Sie zuerst das Zerofree-Dienstprogramm in der virtuellen Maschine installieren. Es sollte in den Software-Repositories Ihrer Linux-Distribution verfügbar sein. Zum Beispiel können Sie es unter Ubuntu installieren, indem Sie den folgenden Befehl am Terminal innerhalb Ihrer virtuellen Maschine ausführen:

sudo apt install zero

Sie können zerofree nicht auf Ihrer / Partition benutzen, während Sie in die Linux-Standardumgebung booten. Stattdessen sollten Sie in einen speziellen Wiederherstellungsmodus booten, in dem Ihre normale root-Partition nicht geladen ist. Starten Sie unter Ubuntu Ihre virtuelle Maschine neu und drücken Sie während des Bootvorgangs wiederholt die Taste "Esc", um auf das Grub-Menü zuzugreifen. Wenn das Grub-Menü angezeigt wird, wählen Sie "* Erweiterte Optionen für Ubuntu" und drücken Sie die Eingabetaste.

Wählen Sie die Option "(Wiederherstellungsmodus)", die dem aktuellsten Linux-Kernel zugeordnet ist - also die Option mit der höchsten Versionsnummer ganz oben in der Liste -, und drücken Sie die Eingabetaste.

Wählen Sie "root" im Wiederherstellungsmenü, um zu einer Root-Shell-Eingabeaufforderung zu booten.

Drücken Sie anschließend "Enter", wenn "Enter zur Wartung drücken" auf Ihrem Bildschirm erscheint. Sie erhalten eine Terminal-Eingabeaufforderung.

Ermitteln Sie in der Befehlszeile, welche virtuelle Festplatte Sie auf Null setzen möchten, indem Sie den folgenden Befehl ausführen:

df

In der folgenden Ausgabe sehen Sie, dass /dev/ sda1 hier das einzige Festplattengerät ist. Wir wissen das, weil es die einzige Platte mit /dev/ in der ganz linken Spalte ist.

Angenommen, Ihre virtuelle Maschine wurde mit den Standardeinstellungen erstellt, hat sie nur /dev/ sda1, die erste Partition auf der ersten Festplatte. Wenn Sie bei mehreren Festplatten oder mehreren Partitionen unterschiedliche Einstellungen vorgenommen haben, müssen Sie möglicherweise eine andere Partition auf Null setzen oder mehrere Partitionen auf null setzen.

Sie sind jetzt bereit, die Festplatte auf Null zu setzen. Führen Sie den folgenden Befehl aus und ersetzen Sie /dev/ sda1 durch den Gerätenamen der Partition, in die Sie Nullen schreiben möchten. Die meisten Leute haben nur ein /dev/ sda1 Gerät auf Null.

zerofree -v /dev/ sda1

Wenn der Zero-Prozess beendet ist, führen Sie den folgenden Befehl aus, um die virtuelle Maschine herunterzufahren:

halt

Wenn Sie die Nachricht "System angehalten" auf Ihrem Bildschirm sehen, wurde das System angehalten und Sie können jetzt schließenHerunterfahren Ihrer virtuellen Maschine. Schließen Sie das Fenster der virtuellen Maschine und wählen Sie "Virtuelle Maschine ausschalten".

Schritt 3: Suchen Sie den VBoxManage-Befehl

Der Rest des Prozesses wird außerhalb der virtuellen Maschine auf Ihrem Host-Betriebssystem ausgeführt. Wenn Sie beispielsweise Windows 10 auf Ihrem PC ausführen und Windows 7 auf einer virtuellen Maschine ausgeführt wird, führen Sie den Rest des Prozesses unter Windows 10 aus.

Diese Option wird in der grafischen Benutzeroberfläche von VirtualBox nicht angezeigt. Stattdessen müssen Sie den Befehl VBoxManage.exe verwenden.

Suchen Sie diesen Befehl, um fortzufahren. Unter Windows finden Sie es im Programmverzeichnis von VirtualBox, standardmäßig C: \ Programme \ Oracle \ VirtualBox. Wenn Sie VirtualBox in einem anderen Verzeichnis installiert haben, suchen Sie stattdessen dort.

Öffnen Sie ein Eingabeaufforderungsfenster. Um dies zu tun, öffnen Sie das Startmenü, geben Sie cmd ein und drücken Sie die Eingabetaste.

Geben Sie cd in die Eingabeaufforderung ein, gefolgt vom Pfad des Ordners, in dem sich der VBoxManage-Befehl befindet. Sie müssen es in Anführungszeichen setzen.

Sie können dies schnell tun, indem Sie cd in das Eingabeaufforderungsfenster eingeben und dann das Ordnersymbol aus der Adressleiste des Dateimanagers in die Eingabeaufforderung ziehen und ablegen.

Wenn Sie den Standardpfad verwenden, sollte dieser wie folgt aussehen:

cd "C: \ Programme \ Oracle \ VirtualBox"

HINWEIS: In diesen Anweisungen wird davon ausgegangen, dass Sie VirtualBox unter Windows verwenden. Wenn Sie VirtualBox unter macOS oder Linux verwenden, können Sie einfach ein Terminal-Fenster öffnen und den Befehl vboxmanage wie jeden anderen Befehl normal ausführen.

Schritt 4: Suchen Sie den Pfad zu der Festplatte, die Sie komprimieren möchten

Führen Sie den folgenden Befehl im Eingabeaufforderungsfenster aus, um eine Liste aller virtuellen Festplatten auf Ihrem Computer anzuzeigen:

VBoxManage.exe list hdds

Durchsuchen Sie die Liste und identifizieren Sie den Dateipfad zu der virtuellen Festplatte, die Sie komprimieren möchten. Angenommen, wir möchten den virtuellen Datenträger ändern, der dem virtuellen Computer namens "Windows 7" zugeordnet ist. Wie wir in der folgenden Ausgabe sehen können, ist der Pfad zu diesem virtuellen Laufwerk auf unserem System C: \ Benutzer \ chris \ VirtualBox-VMs \ Windows 7 \ Windows 7.vdi.

Schritt 5: Komprimieren Sie die Festplatte

Um die Festplatte zu komprimieren, müssen Sie VBoxManage.exe mit dem richtigen Befehl verwenden. Führen Sie einfach den folgenden Befehl aus und ersetzen Sie den Pfad zur Festplatten-VDI-Datei durch den Pfad zum Laufwerk auf Ihrem System, das Sie mit dem obigen Befehl gefunden haben. Achten Sie darauf, den Pfad der Datei in Anführungszeichen zu setzen, wenn sie irgendwo in ihrem Pfad ein Leerzeichen enthält.

Es sollte so aussehen:

VBoxManage.exe modifymedium Platte "C: \ Pfad \ zu \ Disk.vdi" --kompakt

Zum Beispiel, da der Pfad zur Datei C: \ Benutzer \ chris \ VirtualBox VMs \ Windows ist7 \ Windows 7.vdi in unserem Beispiel würden wir den folgenden Befehl ausführen:

VBoxManage.exe modifymedium Datenträger "C: \ Benutzer \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi" --kompatibel

VirtualBox wird komprimiertSie können die virtuelle Maschine sofort starten, wenn Sie möchten. Wie viel Speicherplatz Sie am Ende speichern, hängt davon ab, wie viel Speicherplatz dort frei war.

Überlegen Sie auch, Snapshots zu löschen

Mit VirtualBox können Sie Snapshots für jede virtuelle Maschine erstellen. Diese enthalten beim Erstellen des Snapshots ein vollständiges Abbild der virtuellen Maschine, sodass Sie sie in einem früheren Zustand wiederherstellen können. Diese können viel Platz beanspruchen.

Um mehr Speicherplatz freizugeben, löschen Sie Snapshots, die Sie nicht verwenden. Um die Snapshots anzuzeigen, die Sie für eine virtuelle Maschine gespeichert haben, wählen Sie sie im Hauptfenster von VirtualBox aus und klicken Sie rechts neben Details auf der Symbolleiste auf die Schaltfläche "Snapshots".Wenn Sie keinen Snapshot mehr benötigen, klicken Sie mit der rechten Maustaste darauf und wählen Sie "Snapshot löschen", um Speicherplatz freizugeben.