derzeit verwende ich wsl2 und stelle fest, dass für ext4.vhdx eine erhebliche Menge an Speicherplatz erforderlich ist. Ich weiß, dass es sich um das Dateiverwaltungssystem von Ubuntu handelt, verstehe aber nicht genau, was darin enthalten ist. Deshalb möchte ich einen Blick darauf werfen und alle unnötigen Dateien löschen. Wie mache ich das? Ich weiß, dass wsl2 belegten Speicherplatz nicht an das Hostsystem zurückgibt (ich verwende Windows 10). Deshalb möchte ich sehen, wie viel Speicherplatz Ubuntu bereithält.
Antwort1
Die Antwort von @thomas-ward ist richtig, aber mir scheint, dass es eine zusätzliche „Frage in Ihrer Frage“ gibt, die noch beantwortet werden muss.
Um die andere Antwort zunächst anders zu formulieren: Sie können den gesamten Inhalt am einfachsten sehen, ext4.vhdx
indem Sie einfach WSL ausführen und sich die Dateien ansehen. Zum Beispiel:
sudo find / -xdev | less
ext4
Dadurch werden alle Dateien auf dem als Root gemounteten Dateisystem ( ) gefunden /
, jedoch keine Dateien auf Ihren gemounteten NTFS-/Windows-Laufwerken (das -xdev
schließt andere Dateisysteme aus).
Sie können den von denselben Dateien verwendeten Speicherplatz auch mit Folgendem anzeigen:
sudo du -hdx
Wenn dieser Wert von der Größe der ext4.vhdx
Datei abweicht, dann haben Sie, wie Sie bereits vermuten, wahrscheinlich nicht freigegebenen Speicherplatz. Wie Sie in Ihrer Frage erwähnt haben, wird WSLwachsendiese Datei nach Bedarf, aber es wird nicht automatischschrumpfenes, wenn Dateien entfernt werden.
Um die Datei manuell zu verkleinern, können Sie einen der Schritte ausführen, die ich unterdiese Super User-Antwort. Hier ist einer davon, kopiert aus einem referenzierten Github-Kommentar:
wsl --shutdown
# At this point, it is recommended that you back up your ext.vhdx and delete the backup once you have confirmed the other commands are successful.
diskpart
# open window Diskpart
select vdisk file="C:\WSL-Distros\…\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit
Hinweis: Eine alternative Möglichkeit, direkt darauf zuzugreifen, vhdx
besteht darin, eine neue Linux-basierte VM auf Hyper-V zu starten und dieses virtuelle Laufwerk (oder eine Kopie davon) zur Instanz hinzuzufügen. Es ist nicht möglich, es direkt in Windows zu untersuchen, da Windows das ext4-Dateisystem nicht versteht.
Antwort2
Von einer direkten Untersuchung der VHDX-Datei unter Windows wird abgeraten, da sie ein ext4
Dateisystem enthält.
Im Wesentlichen enthält die VHDX das gesamte Ubuntu-Betriebssystem sowie alle zusätzlichen Dateien/Programme/Bibliotheken usw., die Sie innerhalb von WSL darauf installiert haben. Es ist die gesamte „Festplatte“ des Systems, die WSL2 mit Virtualisierung verwendet, um die Ubuntu-WSL-Umgebung auszuführen. Im Grunde ist jede Datei, zu der Sie in WSL navigieren und die Sie ( /usr/lib/...
zum Beispiel) sehen können, in der VHDX enthalten.