Harting Development

Windows Subsystem für Linux (WSL): Umfassender Leitfaden zur Einrichtung und Verwendung

Lukas Fuchs vor 8 Monaten in  Fehlerbehebung und häufige Probleme 3 Minuten Lesedauer

Was ist WSL?

Das Windows Subsystem for Linux (WSL) ist eine in Windows integrierte Funktion, die es dir ermöglicht, Linux-Befehle und -Anwendungen direkt auf deinem Windows-Gerät auszuführen. Es bietet eine native Linux-Umgebung, ohne dass du eine separate virtuelle Maschine oder ein Dual-Boot-System einrichten musst.

Wie funktioniert WSL?

WSL funktioniert durch die Übersetzung von Linux-Systemaufrufen in Windows-Systemaufrufe. Dies ermöglicht es Linux-Programmen, auf die Windows-Hardware und das -Dateisystem zuzugreifen, ohne Änderungen am Linux-Kernel vornehmen zu müssen. Dadurch wird ein nahtloses Zusammenspiel zwischen Windows und Linux ermöglicht.

Was sind die Vorteile von WSL?

WSL bietet zahlreiche Vorteile, darunter:

  • Nahtlose Integration: Du kannst Linux-Befehle direkt in der Windows-Eingabeaufforderung oder in PowerShell ausführen.
  • Kompatibilität: WSL unterstützt mehrere Linux-Distributionen wie Ubuntu, Debian und SUSE.
  • Ressourceneffizienz: WSL ist leichtgewichtig und verbraucht weniger Ressourcen als virtuelle Maschinen.
  • Zugriff auf Linux-Tools: Du kannst auf ein breites Spektrum an Linux-Tools und -Anwendungen wie Bash, Python und Docker zugreifen.
  • Verbesserte Entwicklungsproduktivität: WSL ermöglicht es dir, Windows- und Linux-Tools in einer einzigen Umgebung zu verwenden, was Entwicklungsworkflows vereinfacht und die Produktivität steigert.

Vorteile der Verwendung von WSL

WSL bietet dir zahlreiche Vorteile, die deine Arbeitsabläufe und Möglichkeiten mit Linux und Windows verbessern können:

Native Linux-Befehle und -Tools

  • Führe native Linux-Befehle wie apt-get, ssh und bash direkt in Windows aus, ohne die Installation einer separaten virtuellen Maschine oder eines Dual-Boot-Systems.
  • Nutze leistungsstarke Linux-Entwicklungstools und Bibliotheken wie gcc, make und git.

Integration in Windows

  • Greife problemlos auf Windows-Dateien und -Verzeichnisse aus deinem Linux-Terminal zu, ohne komplizierte Dateisystem-Mounts.
  • Nutze Windows-Anwendungen wie den Datei-Explorer und die Eingabeaufforderung, um mit WSL-Dateien zu interagieren.
  • Teile die Zwischenablage und andere Systemressourcen zwischen Windows und WSL.

Kompatibilität mit Windows-Software

  • Verwende WSL, um Linux-Software auszuführen, die nicht mit Windows kompatibel ist, wie z. B. docker-compose, python3 und mysql.
  • Entwickele und teste Linux-Anwendungen in einer Windows-Umgebung.

Effizienz und Zeitersparnis

  • Vermeide die Installation und Wartung separater virtueller Maschinen oder Dual-Boot-Systeme.
  • Spare Zeit beim Wechseln zwischen Windows- und Linux-Umgebungen, da beide in derselben Sitzung ausgeführt werden.
  • Automatisiere Aufgaben und Skripte mit Linux-Tools direkt in Windows.

Entwicklerfreundlichkeit

  • Integriere WSL in deine Entwicklungsumgebungen, um sowohl native Windows- als auch Linux-Tools zu nutzen.
  • Nutze die Vorzüge von Linux-Textverarbeitungsprogrammen wie vim und emacs unter Windows.
  • Teile Code und Konfigurationen zwischen Windows- und Linux-Anwendungen.

Systemanforderungen für WSL

Bevor du WSL installierst, musst du sicherstellen, dass dein System die folgenden Systemanforderungen erfüllt:

Betriebssystem

  • Windows 10 (Version 1903 oder höher)
  • Windows 11

Hardware

  • Prozessor: 64-Bit-Architektur (x64)
  • RAM: Mindestens 4 GB
  • Speicherplatz: Mindestens 20 GB freier Speicherplatz
  • Virtualisierungsfunktionen: Hardware-Virtualisierungsfunktionen müssen im BIOS aktiviert sein.

Weitere Voraussetzungen

  • Windows-Features: Hyper-V und Windows-Subsystem für Linux müssen aktiviert sein.
  • Verwaltungsberechtigungen: Du benötigst Administratorrechte, um WSL zu installieren und zu konfigurieren.
  • Internetverbindung: Für die Installation von WSL und Linux-Distributionen ist eine Internetverbindung erforderlich.

Empfohlene Hardware

  • Prozessor: Intel Core i5 oder AMD Ryzen 5 oder höher
  • RAM: 8 GB oder mehr
  • Speicherplatz: SSD-Laufwerk für bessere Leistung

Hinweis: Die Systemanforderungen können je nach verwendeter Linux-Distribution variieren. Überprüfe daher die spezifischen Anforderungen der jeweiligen Distribution vor der Installation.

Installation von WSL

Um Windows Subsystem for Linux (WSL) zu installieren, folge diesen Schritten:

Voraussetzungen

  • Windows 10 Build 18362 oder höher: Überprüfe deine Windows-Version unter Einstellungen > System > Info.
  • Virtualisierungsunterstützung: Stelle sicher, dass die Virtualisierung in deinem BIOS aktiviert ist.
  • Mindestens 4 GB RAM: Für eine reibungslose Leistung werden 8 GB oder mehr empfohlen.

Aktivierung der Windows-Subsystem-Funktion

  1. Öffne die Einstellungen (Tastenkombination: Windows-Taste + i).
  2. Gehe zu Apps > Programme und Features > Optionale Features.
  3. Klicke auf Feature hinzufügen.
  4. Suche nach "Windows Subsystem for Linux" und wähle es aus.
  5. Klicke auf Installieren.

Installation der Linux-Distribution

Nachdem du die WSL-Funktion aktiviert hast, musst du eine Linux-Distribution installieren:

  1. Öffne das Microsoft Store.
  2. Suche nach der gewünschten Distribution (z. B. Ubuntu, Kali Linux, Fedora).
  3. Klicke auf Installieren.

Nach der Installation

Sobald die Linux-Distribution installiert ist, kannst du sie über das Startmenü oder die Eingabeaufforderung (CMD) starten:

  1. Startmenü: Gebe den Namen der Distribution in das Suchfeld ein und klicke auf das entsprechende Symbol.
  2. Eingabeaufforderung: Gebe den Befehl wsl gefolgt vom Namen der Distribution ein (z. B. wsl ubuntu).

Du wirst nun aufgefordert, einen Benutzernamen und ein Kennwort für deine Linux-Distribution festzulegen. Danach kannst du mit der Verwendung von WSL beginnen.

Konfiguration von WSL

Sobald WSL installiert ist, musst du es konfigurieren, um mit der Verwendung von Linux-Distributionen zu beginnen. Hier sind einige Konfigurationsschritte:

Benutzername und Passwort festlegen

  • Öffne ein WSL-Terminalfenster.
  • Führe den Befehl wsl -u <benutzername> aus, um einen Benutzernamen für dein WSL-Benutzerkonto festzulegen.
  • Führe den Befehl passwd aus, um ein Passwort für dein Benutzerkonto festzulegen.

Standarddistribution festlegen

  • Öffne die Windows-Einstellungen (Win + I).
  • Navigiere zu "Apps" > "Optionale Features" > "Windows-Subsystem für Linux".
  • Wähle die gewünschte Standard-Linux-Distribution aus der Liste aus.

Komponenten installieren

  • Optional kannst du zusätzliche WSL-Komponenten installieren, wie z. B.:
    • WSL-Build-Tools: Für die Entwicklung von Linux-Anwendungen.
    • WSL-Kernel-Updates: Für die Installation von Kernel-Updates für deine Linux-Distributionen.

Umgebungsvariablen und Pfad konfigurieren

  • Du kannst Umgebungsvariablen und den Pfad in WSL konfigurieren, um bestimmte Programme oder Verzeichnisse leichter zugänglich zu machen.
  • Öffne ein WSL-Terminalfenster.
  • Führe den Befehl export <variable>=<wert> aus, um eine Umgebungsvariable festzulegen.
  • Führe den Befehl echo $PATH aus, um den aktuellen Pfad anzuzeigen.
  • Führe den Befehl export PATH=$PATH:<neues_verzeichnis> aus, um ein neues Verzeichnis zum Pfad hinzuzufügen.

SSH-Schlüssel hinzufügen

  • Du kannst SSH-Schlüssel zu WSL hinzufügen, um eine sichere Verbindung zu Remote-Linux-Servern herzustellen.
  • Öffne ein WSL-Terminalfenster.
  • Führe den Befehl ssh-keygen aus, um einen neuen SSH-Schlüssel zu generieren.
  • Kopiere den öffentlichen Schlüssel (id_rsa.pub) auf deinen Remote-Server.
  • Führe den Befehl ssh <benutzername>@<serveradresse> aus, um eine Verbindung zu deinem Remote-Server herzustellen.

GUI-Anwendungen aktivieren (optional)

  • Optional kannst du GUI-Anwendungen in WSL aktivieren, um grafische Linux-Programme auf deinem Windows-Desktop auszuführen.
  • Öffne die Windows-Einstellungen (Win + I).
  • Navigiere zu "Apps" > "Optionale Features" > "Windows-Subsystem für Linux" > "Optionale Komponenten verwalten".
  • Aktiviere das Kontrollkästchen "Grafische Schnittstelle".
  • Starte dein WSL-Terminalfenster neu.

Verwendung der Linux-Befehlszeile in WSL

Nachdem du WSL erfolgreich installiert und konfiguriert hast, kannst du die Linux-Befehlszeile in Windows nutzen. Dies eröffnet dir die Möglichkeit, leistungsstarke Linux-Tools und Befehle direkt in deiner vertrauten Windows-Umgebung zu verwenden.

Terminal und Shell

Um die Linux-Befehlszeile zu verwenden, öffne das Windows-Terminal. Dies ist eine moderne Terminalanwendung, die mehrere Registerkarten und verschiedene Shells unterstützt. Standardmäßig wird die Bash-Shell verwendet, die für die meisten Linux-Anwendungen geeignet ist.

Du kannst den folgenden Befehl ausführen, um die Bash-Shell zu starten:

wsl

Ausführen von Linux-Befehlen

Sobald die Bash-Shell läuft, kannst du Linux-Befehle wie gewohnt eingeben. Hier sind einige grundlegende Befehle zum Einstieg:

  • ls: Listet Dateien und Verzeichnisse auf
  • cd: Wechselt in ein anderes Verzeichnis
  • mkdir: Erstellt ein neues Verzeichnis
  • touch: Erstellt eine leere Datei
  • nano: Öffnet einen Texteditor
  • sudo: Erhöht die Berechtigungen für Befehle

Befehlsvervollständigung und Manpages

Die Bash-Shell in WSL unterstützt die Befehlsvervollständigung, die dir das schnelle Auffinden von Befehlen und Optionen erleichtert. Beginne einfach mit der Eingabe eines Befehls oder einer Option und drücke die Tab-Taste.

Darüber hinaus bietet WSL Zugriff auf Manpages, die Dokumentation zu Linux-Befehlen enthalten. Um eine Manpage anzuzeigen, führe den folgenden Befehl aus:

man <befehlsnamen>

Bash-Skripte

Du kannst Bash-Skripte schreiben, um automatisierte Aufgaben in WSL auszuführen. Erstelle eine neue Datei mit der Erweiterung .sh und füge deine Befehle hinzu. Führe das Skript dann mit dem folgenden Befehl aus:

./<skriptname>.sh

Paketverwaltung

WSL enthält keine Paketverwaltung wie apt oder yum. Du kannst jedoch Paketmanager von Drittanbietern wie WSL2-apt oder Scoop installieren, um Software in WSL zu verwalten.

Zusätzliche Tipps

  • Verwende das Linux-Dateisystem (/mnt/c) für den Zugriff auf Windows-Dateien.
  • Vermeide es, Pfade mit Leerzeichen zu verwenden.
  • Stelle sicher, dass du über Administratorrechte verfügst, um bestimmte Vorgänge auszuführen.

Installation von Linux-Distributionen

Sobald WSL eingerichtet ist, kannst du damit beginnen, Linux-Distributionen zu installieren. Microsoft stellt eine Auswahl an Linux-Distributionen im Microsoft Store zur Verfügung, darunter Ubuntu, OpenSUSE Leap, SUSE Linux Enterprise Server, Debian und Kali Linux.

Installation aus dem Microsoft Store

  1. Öffne den Microsoft Store.
  2. Suche nach der gewünschten Linux-Distribution.
  3. Klicke auf die Schaltfläche Abrufen oder Installieren.

Die Distribution wird nun heruntergeladen und installiert. Nach Abschluss der Installation kannst du sie über das Startmenü starten.

Manuelle Installation

Alternativ kannst du Linux-Distributionen auch manuell von ihren jeweiligen offiziellen Websites herunterladen und installieren. Dies ist beispielsweise erforderlich, wenn du eine Distribution verwenden möchtest, die nicht im Microsoft Store verfügbar ist.

  1. Lade die ISO-Datei der gewünschten Distribution herunter.
  2. Öffne die Eingabeaufforderung als Administrator.
  3. Navigiere zum Speicherort der ISO-Datei.
  4. Führe den folgenden Befehl aus, um die Distribution zu installieren:
wsl --import <Distributionsname> <Dateipfad zur ISO-Datei>

Ersetze <Distributionsname> durch den Namen der Distribution (z. B. ubuntu) und <Dateipfad zur ISO-Datei> durch den tatsächlichen Dateipfad der ISO-Datei.

Auswahl der richtigen Distribution

Die Wahl der richtigen Linux-Distribution hängt von deinen spezifischen Anforderungen ab. Hier sind einige gängige Optionen:

  • Ubuntu: Beliebteste und benutzerfreundliche Distribution, geeignet für Anfänger und erfahrene Benutzer
  • OpenSUSE Leap: Stabile und zuverlässige Distribution, ideal für Server und Workstations
  • Debian: Robuste und sichere Distribution, die als Grundlage für viele andere Distributionen dient
  • Kali Linux: Auf Penetrationstests spezialisierte Distribution mit einer großen Sammlung von Sicherheitstools

Konfiguration nach der Installation

Nach der Installation einer Linux-Distribution kannst du sie konfigurieren, indem du den folgenden Befehl ausführst:

sudo dpkg-reconfigure <Distributionsname>

Ersetze <Distributionsname> durch den Namen der Distribution (z. B. ubuntu).

Dieser Befehl ermöglicht es dir, Zeitzone, Tastaturlayout und andere Einstellungen zu konfigurieren.

Datei- und Verzeichniszugriff zwischen Windows und WSL

WSL bietet einen nahtlosen Austausch von Dateien und Verzeichnissen zwischen Windows und deiner Linux-Distribution. Dadurch kannst du auf Dateien von beiden Betriebssystemen aus zugreifen und sie bearbeiten.

Zugriff auf Windows-Dateien von WSL

Um auf deine Windows-Dateien in WSL zuzugreifen, kannst du den folgenden Pfad verwenden:

/mnt/c

Dieser Pfad entspricht dem Laufwerk C: auf deinem Windows-System. Von hier aus kannst du auf alle deine Windows-Dateien und -Verzeichnisse zugreifen und sie bearbeiten.

Zugriff auf WSL-Dateien von Windows

Um auf deine WSL-Dateien von Windows aus zuzugreifen, kannst du den folgenden Pfad im Windows-Datei-Explorer verwenden:

\\wsl$\<Distribution-Name>\home\<Benutzername>

Ersetze <Distribution-Name> durch den Namen deiner installierten Linux-Distribution. Beispielsweise lautet der Pfad für eine Ubuntu-Distribution wie folgt:

\\wsl$\Ubuntu\home\<Benutzername>

Dateiänderungen synchronisieren

Änderungen, die du an Dateien in WSL vornimmst, werden automatisch mit Windows synchronisiert. Dies gilt auch umgekehrt, sodass Änderungen, die du an Windows-Dateien vornimmst, in WSL übernommen werden.

Zugriff auf spezielle Dateien und Verzeichnisse

  • /proc: Enthält Informationen über laufende Prozesse.
  • /sys: Enthält Informationen über das System.
  • /dev: Enthält Gerätetreiber.

Diese Verzeichnisse sind in der Regel für Windows nicht zugänglich und sollten nicht verändert werden.

Freigabe von Ordnern zwischen Windows und WSL

Um die Zusammenarbeit zwischen Windows und WSL zu verbessern, kannst du Ordner zwischen den beiden Systemen freigeben. Dies ermöglicht dir den einfachen Zugriff auf Dateien und die gemeinsame Nutzung von Daten.

Einrichtung

Um einen Ordner freizugeben, musst du zunächst das WSL 2 Linux-Dateisystem für Windows 2 Feature installieren.

Navigiere anschließend zu dem Ordner, den du freigeben möchtest, und klicke mit der rechten Maustaste darauf. Wähle "Eigenschaften" und gehe dann zur Registerkarte "Freigabe".

Klicke auf "Erweiterte Freigabe" und aktiviere das Kontrollkästchen "Diesen Ordner freigeben". Du kannst auch Berechtigungen festlegen, um den Zugriff anderer Benutzer zu steuern.

Zugriff auf freigegebene Ordner

In Windows:

Um auf einen in WSL freigegebenen Ordner zuzugreifen, öffne den Datei-Explorer und navigiere zu folgender Adresse:

\\wsl$\<Benutzername>\<Freigegebener Ordner>

In WSL:

Um auf einen in Windows freigegebenen Ordner zuzugreifen, öffne das Terminal und verwende den folgenden Befehl:

sudo mount -t drvfs Z: \\\\wsl$\<Benutzername>\<Freigegebener Ordner>

Ersetze "Z:" durch den gewünschten Laufwerksbuchstaben für den freigegebenen Ordner.

Vorteile der Freigabe von Ordnern

  • Einfacher Dateiaustausch zwischen Windows und WSL
  • Gemeinsame Nutzung von Daten für Anwendungen in beiden Systemen
  • Verbesserte Produktivität und Zusammenarbeit
  • Nahtloser Übergang zwischen Windows- und Linux-Workflows

Netzwerkzugriff in WSL

IP-Adressen und Netzwerkadapter

WSL erstellt beim Start einen virtuellen Netzwerkadapter, der dem Linux-System eine IP-Adresse zuweist. Diese IP-Adresse kann sich von der IP-Adresse deines Windows-Computers unterscheiden. Du kannst die IP-Adresse deiner WSL-Instanz mit dem folgenden Befehl ermitteln:

ip addr show dev eth0

Kommunikation zwischen Windows und WSL

WSL-Distributionen können über ihren eigenen Netzwerkadapter auf das Internet zugreifen. Sie können auch über den virtuellen Netzwerkadapter mit Windows kommunizieren. Dies ermöglicht dir, Dateien und Ressourcen zwischen Windows und WSL auszutauschen.

Freigabe von Ports

Wenn du eine Anwendung in WSL ausführst, die einen bestimmten Port benötigt, musst du diesen Port für die Anwendung freigeben. Dies kannst du mit dem folgenden Befehl tun:

netsh int ipv4 add portproxy <WSL-Portnummer> <Windows-Portnummer>

Beispielsweise kannst du Port 8080 in WSL für Port 9000 in Windows freigeben:

netsh int ipv4 add portproxy 8080 9000

DNS-Auflösung

WSL verwendet standardmäßig den DNS-Server von Windows. Wenn du einen anderen DNS-Server verwenden möchtest, kannst du die /etc/resolv.conf-Datei in deiner WSL-Distribution bearbeiten.

Weitere Ressourcen

Grafische Anwendungen in WSL

Was sind grafische Anwendungen in WSL?

Grafische Anwendungen (GUIs) sind Programme, die eine Benutzeroberfläche bieten, mit der du visuell interagieren kannst. In WSL kannst du grafische Anwendungen auszuführen, die in Linux entwickelt wurden, z. B. Textverarbeitungsprogramme, Bildbearbeitungsprogramme und Spiele.

Voraussetzungen für grafische Anwendungen in WSL

Um grafische Anwendungen in WSL auszuführen, benötigst du:

  • Eine unterstützte Windows 10 oder Windows 11 Edition (Pro, Enterprise oder Education)
  • WSL 2 oder höher
  • Einen Windows-Anzeigetreiber, der WDDM 2.4 oder höher unterstützt
  • Die virtuelle OpenGL-Maschine von Windows (Windows Subsystem for X11)

Installation der virtuellen OpenGL-Maschine (WSLg)

Um die virtuelle OpenGL-Maschine zu installieren, öffnest du das Microsoft Store und suchst nach "Windows Subsystem for X11". Installiere die Anwendung und starte deinen Computer neu.

Ausführen grafischer Anwendungen

Sobald WSLg installiert ist, kannst du grafische Anwendungen in WSL ausführen, indem du die folgenden Schritte ausführst:

  1. Öffne ein WSL-Terminal.
  2. Installiere die entsprechende Linux-Distribution für die gewünschte grafische Anwendung.
  3. Installiere die grafische Anwendung in deiner Linux-Distribution.

Verwendung von grafischen Anwendungen mit Windows-Anwendungen

WSL ermöglicht die Interaktion zwischen grafischen Anwendungen und Windows-Anwendungen. Du kannst beispielsweise Dateien aus einem Windows-Verzeichnis in eine grafische Anwendung in WSL ziehen und ablegen oder umgekehrt.

Häufige Probleme und Lösungen

  • WSLg wird nicht angezeigt: Stelle sicher, dass du WSL 2 oder höher verwendest und dass dein Windows-Anzeigetreiber WDDM 2.4 oder höher unterstützt.
  • Die grafische Anwendung wird nicht gestartet: Überprüfe, ob die grafische Anwendung mit deiner Linux-Distribution kompatibel ist und ob du die erforderlichen Abhängigkeiten installiert hast.
  • Die grafische Anwendung wird nur auf dem WSL-Desktop angezeigt: Stelle sicher, dass du die Option "X Server Integration" in den WSL-Einstellungen aktiviert hast.

Problembehandlung bei WSL

Häufig auftretende Probleme und Lösungen

Wenn du auf Probleme bei der Verwendung von WSL stößt, kannst du die folgenden Schritte zur Fehlerbehebung ausführen:

  • WSL startet nicht: Stelle sicher, dass die Virtualisierung in deinem BIOS aktiviert ist. Du kannst dies überprüfen, indem du im BIOS-Einstellungsmenü nach "Virtualisierung" oder "VT-x" suchst.
  • Windows Terminal öffnet sich nicht: Installiere das neueste Windows Terminal Update aus dem Microsoft Store.
  • Befehlszeilenbefehle funktionieren nicht: Überprüfe, ob du die Linux-Distribution korrekt installiert hast. Gehe zu "Einstellungen" > "Apps" > "Apps & Funktionen" > "Optionale Funktionen" und stelle sicher, dass WSL und deine gewünschte Linux-Distribution aktiviert sind.
  • Dateien können nicht zwischen Windows und WSL freigegeben werden: Aktiviere die Ordnerfreigabe in WSL mit dem Befehl sudo mount -t drvfs Z: /mnt/c. Ersetze dabei "Z:" durch den gewünschten Laufwerksbuchstaben.
  • Netzwerkzugriff funktioniert nicht: Überprüfe, ob die Netzwerkverbindung auf deinem Host-Computer funktioniert. Öffne dann eine Eingabeaufforderung als Administrator und führe den Befehl netsh winsock reset aus, um die Winsock-Einstellungen zurückzusetzen.

Zusätzliche Ressourcen

Wenn du diese Schritte zur Fehlerbehebung befolgst, kannst du die meisten häufig auftretenden Probleme mit WSL lösen. Wenn du immer noch Probleme hast, suche bitte in der Microsoft-Dokumentation oder im Github-Repository nach weiteren Informationen.

Folge uns

Neue Posts

Beliebte Posts