Hintergrund & Funktionsweise
Es ist sehr einfach möglich eine komplette Linux Umgebung inklusive dessen grafischer Benutzeroberfläche auf einem Windows Rechner zu betreiben. Dabei wird Windows Remote Desktop als Client verwendet, um auf die grafische Benutzeroberfläche von Linux auf Basis der installierten Desktop-Umgebung (z.B. “Xfce”1) zu gelangen. Es fühlt sich an als wäre Linux inkl. dessen Desktop-Umgebung direkt auf dem Rechner installiert. Folgende Features werden unterstützt:
- Copy & Paste von Dateien zwischen dem Windows Desktop und der Linux Desktop Umgebung
- Multi-Monitor-Betrieb
- Video-Streaming, z.B. YouTube
- Preview: Verbinden von USB-Geräten, z.B. Audio/Video per “usbipd-win”2
Voraussetzungen
- Mindestens Windows 113 ist installiert
- WSL24 muss unter Windows 11 aktiviert sein
- Curl5 muss unter Windows 11 vorhanden sein (standardmäßig installiert seit Windows 10)
Schritte
-
Download des rootfs-images für WSL einer Linux-Distribution, in unserem Fall verwenden wir Noble Numbat LTS6
- innerhalb der Windows Eingabeaufforderung -
- Die Tastenkombination Windows-Taste + R-Taste betätigen
- Im kleinen Fenster cmd eingeben und mit der Return-Taste bestätigen oder OK klicken
- Ordner erstellen
mkdir "%userprofile%\mylinux"
- Download der Distribution
curl https://cloud-images.ubuntu.com/wsl/noble/current/ubuntu-noble-wsl-amd64-ubuntu24.04lts.rootfs.tar.gz --output "%userprofile%\mylinux\mylinux-rootfs.tar.gz"
-
Importieren des heruntergeladenen rootfs-images
- innerhalb der Windows Eingabeaufforderung -
- Start des Importprozess
wsl --import mylinux "%userprofile%\mylinux\vhdx" "%userprofile%\mylinux\mylinux-rootfs.tar.gz"
- Start des Importprozess
-
Prüfen des Imports
- innerhalb der Windows Eingabeaufforderung -
- Auflisten der installierten Subsysteme
wsl -l -v
- Der Import war erfolgreich wenn “mylinux” in der Liste der Distributionen erscheint
NAME STATE VERSION mylinux Stopped 2
- Auflisten der installierten Subsysteme
-
Linux-Distribution starten
- innerhalb der Windows Eingabeaufforderung -
-
Starten des installierten Subsystems
wsl -d mylinux
-
Hinweis: Nach der Eingabe dieses Befehles wechselt die normale Windows Eingabeaufforderung erstmals in das Terminal der Linux-Distribution
-
-
Prüfen der Distribution innerhalb des Terminals der Linux-Distribution
- innerhalb des Terminals der Linux-Distribution -
- Release Informationen anzeigen
lsb_release -a
- Die resultierende Ausgabe sollte folgendermaßen aussehen
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.1 LTS Release: 24.04 Codename: noble
- Passwort für den User “root” vergeben
passwd root
- Hinweis: Das Password muss zwei Mal nacheinander eingegeben werden
- Wichtig: Innerhalb der Xrdp-Umgebung wird der Benutzer “root” für sicherheitskritische Prozesse wie z.B. für das Mounten von Laufwerken benötigt
- Release Informationen anzeigen
-
Installation der Desktop-Umgebung “Xfce” und “Xrdp”7
- innerhalb des Terminals der Linux-Distribution -
- Benötigte Pakete installieren
apt update && apt install -y xfce4 xrdp
- Der technische Benutzer “Xrdp” muss der Gruppe “ssl-cert” zugeordnet werden
adduser xrdp ssl-cert
- Einen neuen User “tux” für den Login per “Xrdp” anlegen
useradd -m -G users,sudo tux
- Passwort für den neuen User “tux” vergeben
passwd tux
- Hinweis: Das Password muss zwei Mal nacheinander eingegeben werden
- Benötigte Pakete installieren
-
Vorbereiten der benutzerspezifischen X-Session
- innerhalb des Terminals der Linux-Distribution -
- Die Session des neu angelegten Benutzers “tux” konfigurieren
su - tux
- Bearbeiten der Konfiguration für die x-session
echo xfce4-session >> ~/.xsession
- Die Session des users tux user verlassen
exit
- Die Session des neu angelegten Benutzers “tux” konfigurieren
-
Konfigurieren der Linux-Distribution zur Verwendung von “systemd”
- innerhalb des Terminals der Linux-Distribution -
- Bearbeiten der Konfiguration für WSL
echo -e "[network]\nhostname=mylinux\n[boot]\nsystemd=true" > /etc/wsl.conf
- Das Terminal der Linux-Distribution wieder verlassen
exit
- Bearbeiten der Konfiguration für WSL
-
Herunterfahren von WSL und Neustarten der Linux-Distribution
- innerhalb der Windows Eingabeaufforderung -
- Das Subsystem muss zuerst beendet werden, um anschließend einen Neustart zu initiieren
wsl -t mylinux
- Wichtiger Hinweis: Wenn ein anderes Subsystem läuft, unter dem ein Xrdp-Server auf dem Standardport 3389 aktiv ist, ist es zwingend erforderlich, Windows an dieser Stelle neu zu starten!
- Neustart der Linux-Distribution
wsl -d mylinux
- Hinweis: Die Windows Eingabeaufforderung wechselt erneut in das Terminal der Linux-Distribution
- Das Subsystem muss zuerst beendet werden, um anschließend einen Neustart zu initiieren
-
Prüfen ob Xrdp gestartet ist
- innerhalb des Terminals der Linux-Distribution -
- Prüfen ob Xrdp korrekt gestartet ist
systemctl status xrdp
- Die ersten beiden Zeilen der resultierende Ausgabe sollten folgendermaßen aussehen
● xrdp.service - xrdp daemon Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; preset: enabled) Active: active (running) since ... . . .
- Prüfen ob Xrdp korrekt gestartet ist
-
Wichtig: Starten eines zweiten Fensters der Windows Eingabeaufforderung ist erforderlich
- Das Terminal der Linux-Distribution muss weiterhin geöffnet bleiben
- Die Tastenkombination Windows-Taste + R-Taste betätigen
- Im kleinen Fenster cmd eingeben und mit der Return-Taste bestätigen oder OK klicken
-
IP Adresse von WSL herausfinden
- innerhalb der Windows Eingabeaufforderung -
- Prüfen der IP-Adressen, welche von WSL verwendet werden
wsl hostname -I
- Gegebenenfalls werden mehrere IP-Adressen ausgegeben, z.B.
172.25.107.5 172.18.0.1 172.20.0.1
- Prüfen der IP-Adressen, welche von WSL verwendet werden
-
Aufruf des Remote-Desktops mit der ersten angezeigten IP-Adresse
- innerhalb der Windows Eingabeaufforderung -
- Die Windows Remote Desktop session starten
mstsc /v:"172.25.107.5"
- Die Windows Remote Desktop session starten
-
Über den Remote Desktop Client einloggen
- innerhalb Windows Remote Desktop -
- Als Benutzername tux eingeben
- Einloggen mit dem zuvor per “passwd” festgelegten Password des Benutzers tux
- Der Desktop von Xfce4 wird angezeigt
Optional: Komplette Deinstallation der aufgebauten Linux-Distribution
Achtung: Entfernt alles was in den vorherigen Schritten heruntergeladen bzw. angelegt wurde
-
Heruntergeladenes root-fs-image “mylinux-rootfs.tar.gz”
-
Erstelltes Festplatten-File “ext.vhdx”
-
Gespeicherte Daten innerhalb der Linux-Distribution
-
Folgende Schritte sind durchzuführen
- innerhalb der Windows Eingabeaufforderung -
- Die Tastenkombination Windows-Taste + R-Taste betätigen
- Im kleinen Fenster cmd eingeben und mit der Return-Taste bestätigen oder OK klicken
wsl --unregister mylinux
rmdir /s /q "%userprofile%\mylinux"