Menü

Ausprobiert: Windows-Subsystem für Linux Version 2

WSL2 ist als Vorabversion Teil der aktuellen Windows 10 Insider-Preview. Wir haben die Linux-Kompatibilitätsschicht trotz lückenhafter Anleitung ausprobiert.

Lesezeit: 2 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 275 Beiträge

(Bild: Microsoft)

Von

In der jüngsten Insider-Preview für Windows 10 (Build 18917) hat Microsoft wie versprochen eine Vorabversion seiner Linux-Kompatibilitätsschicht eingebaut.

Um die Neuauflage von WSL testen zu können, muss "Plattform für virtuelle Computer" aktiv sein.

In einer entsprechenden Ankündigung nennt Microsoft Details zu Installation und Neuerungen in Version 2 des Windows-Subsystem für Linux (WSL). Wir haben WSL2 kurz ausprobiert. Dabei haben wir festgestellt: Es hat noch allerlei Anlaufschwierigkeiten.

Das beginnt schon damit, dass Microsofts Hinweise zur Einrichtung nicht genügen – man muss auch die Kommentare der Nutzer darunter lesen. Nicht ein, sondern zwei Powershell-Befehle sind nötig, damit man es auf einer frischen Installation überhaupt an den Start kriegt:

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Die eigentlichen Linux-Distributionen sind aus dem Store zu installieren. Das geht, ohne dort ein Konto einzurichten.

Außerdem muss über die Store-App mindestens eine Linux-Distribution installiert und anschließend die eigentliche Einrichtung der Umgebung durch schlichtes Aufrufen initiiert worden sein. Erst dann funktioniert der von Microsoft vorgesehene Befehl, um ein auf diesem Weg beispielsweise aktives Debian auf die Version 2 des WSL umzustellen:

wsl --set-version Debian 2

Beim nächsten Start, etwa via Startmenüsuche nach "Debian", läuft diese Umgebung dann innerhalb der WSL2. Das ist an Details erkennbar. So liegt etwa die Größe des root-Dateisystems jetzt bei rund 250 GByte — auf diese Größe ist die VHD-Datei eingestellt, in der die Daten letztlich landen.

Beim Verwalten der Linux-Umgebungen unter Windows hilft die PowerShell.

Wie von Microsoft versprochen lässt sich in einer solchen Debian-WSL2-Umgebung Docker einrichten. Der Docker-Daemon läuft aber nur so lange, wie die Windows-Nutzersession besteht. Nach dem Abmelden oder einem Windows-Neustart muss man Docker erneut manuell starten. Es lassen sich gängige Docker-Images benutzen. Die Netzwerkeinbindung von WSL ist noch eine Baustelle: Das Debian erhielt eine private IP-Adresse (172.17 …) und war deshalb von außen nicht erreichbar. Auch localhost eignet sich nicht für gemeinsame Netzdienste: Ein Zugriff auf localhost aus Windows heraus erreicht nur die Windows-Seite und entsprechend unter Linux.

Für den dauerhaften Betrieb ausgewählter Unix-Dienste, etwa eines Mail-Servers, eignet sich also auch die neue Fassung der WSL nicht — letztlich hat Microsoft das aber auch nie versprochen. Für Entwickler, die gelegentliche Hintergrunddienste wie Docker oder Apache auf Ihrem Entwicklungssystem starten wollen, passt das Angebot trotzdem. Beim Nachinstallieren von Paketen in einer WSL2-Umgebung kann man spüren, dass der neue Ansatz bessere Performance liefert; mit WSL1 fühlen sich solche Vorgänge doch arg zäh an.

Von der andersartigen technischen Integration merkt man herzlich wenig. Wer versucht, auf der Windows-Seite mehr über die Minimal-VM herauszufinden, in der WSL2 laufen soll, kriegt sie zumindest mit typischen Hyper-V-Werkzeugen nicht zu fassen (letztlich soll dieselbe Technik zum Einsatz kommen). Auf Linux-Seite werden Unterschiede schneller deutlich: Software, die gern Kernel-Modul übersetzen will, scheitert mit den gängigen Methoden dazu. Die Entwickler-Dateien (Header) für den Linux-Kernel von Microsoft fehlen. Daher fällt etwa Debians Dynamic Kernel Module Support Framework auf die Nase.

Alle WSL2-Linux-Umgebungen verwenden den gleiche Kernel auf Basis der Linux-Version 4.19.43. Auch wenn man mehrere Linux-Distributionen startet, etwa Debian und Ubuntu, laufen alle unter diesem Kernel. Und nicht nur das: Sie benutzen alle eine gemeinsame Kernel-Instanz. Die Architektur ähnelt damit einem herkömmlichen in einer VM laufenden Linux-System, unter dem verschiedene Distributionen parallel in Containern laufen. Sie nutzen dabei einen einzigen Kernel. Ein kurzer Vergleich der Quellen des WSL-Kernels mit dem offiziellen Linux-Kernel liefert ein verhältnismäßig kleines Patchset: Nicht einmal 200 Zeilen in 20 Dateien haben die Microsoft-Entwickler geändert.

Mehr zum Thema:

(ovw)