Linux unter Windows Server
« | 07 Mar 2021 | »Unter Windows 10 öffnet man die Windows-Store App, sucht nach Linux und wählt aus, was man haben möchte.
Doch unter Windows Server gibt es keine Store-App.
Wie installiert man also dort das Windows Subsystem for Linux (WSL) und eine Distribution ?
Nachdem das Subsystem für Linux erst um 2017 in Windows Einzug hielt, steht es im originalen Windows Server 2016 nicht zur Verfügung. Microsoft hat parallel zu Windows 10 auch aktualisierte Server Varianten basierend auf Server 2016 erstellt (z.B. Windows Server, version 1709) wo das WSL integriert war, aber ganz offiziell steht das neue Feature erst in Server 2019 zur Verfügung.
WSL installieren
Allgemein startet man einfach die PowerShell als Administrator und führt
aus, aber man findet dieses Feature auch im Server Manager
im
Add Roles and Features Wizard
unter dem Namens Windows Subsystem for Linux
Nach einem Neustart ist der WSL Kern einsatzbereit, nun brauchen wir noch eine Linux Distribution.
Linux Distribution installieren
An dieser Stelle fehlt uns die Store-App am Server, die das
APPX Paket
herunterlädt und am System installiert.
Am Server müssen wir diese Schritte manuell nachbauen:
- Wir brauchen den Download Link einer Linux Distribution:
- Ubuntu 20.04 X64: https://aka.ms/wslubuntu2004
- Ubuntu 20.04 ARM: https://aka.ms/wslubuntu2004arm
- Ubuntu 18.04 X64: https://aka.ms/wsl-ubuntu-1804
- Ubuntu 18.04 ARM: https://aka.ms/wsl-ubuntu-1804-arm
- Ubuntu 16.04 X64: https://aka.ms/wsl-ubuntu-1604
- Debian: https://aka.ms/wsl-debian-gnulinux
- KaliLinux: https://aka.ms/wsl-kali-linux-new
- OpenSUSE Leap 42: https://aka.ms/wsl-opensuse-42
- SuSE Enterprise 12: https://aka.ms/wsl-sles-12
- Fedora: https://github.com/WhitewaterFoundry/WSLFedoraRemix/releases/
- Wir laden die Datei lokal herunter:
- Die heruntergeladene APPX Datei ist (Überraschung!) eine
ZIP Datei.
Wir müssen sie umbenennen und extrahieren: - Jetzt starten wir das Setup Programm im extrahierten Verzeichnis:
Während unter Windows 10 alle Store-Apps unter C:\Users\%USERNAME%\AppData\Local\Packages
installiert werden, sind wir am Server frei in der Wahl des Zielverzeichnisses.
Will man (so wie bei den Store-Apps üblich) die Linux-Sitzung für nur einen
Benutzer konfigurieren, dann macht es Sinn, die Installation in einem
Unterverzeichnis von C:\Users\%USERNAME%\AppData\Local
durchzuführen.
WSL Distribution nutzen
Jede Distribution liefert ein anderes Executable aus. Es liegt in der Regel
immer direkt im Installationsverzeichnis. Bei Ubuntu 20.04 heißt sie
ubuntu2004.exe
.
Beim ersten Start von ubuntu2004.exe
wird die Umgebung eingerichtet und
ein User-Account angelegt, für den wir Namen und Passwort eingeben müssen.
Aber so bald das durchgelaufen ist, startet die WSL Shell (meist /bin/bash
).
Jeder weitere Start des Programs öffnet ein weiteres Linux Shell-Fenster.
Man braucht sich also nur mehr einen Link darauf einrichten und diesen ins
Startmenü aufnehmen … dann sieht es genau so aus, als hätte man den
App-Store benützt.
Fazit
WSL am Windows Server stellen sicher kein besonders performantes System dar,
aber für die Softwareentwicklung eignet sich ein solches System durchaus,
wenn man Windows und Linux parallel entwickelt und ohne Virtualisierung
Binärpakete bauen möchte.
Dann braucht man nämlich nur genau einen Windows Server, der die Build-Jobs
übernimmt. Natürlich sind dafür aber einige Konfigurationsschritte
erforderlich, vor allem der automatische Start die Linux-Umgebung beim
Systemstart.
Wie auch immer, mir gefällt diese Option. Vor allem das Benutzer-unabhängige
zentrale Installieren der WSL Distribution war mir früher nicht bekannt und
somit musste ich immer mühsam im User-Packager Unterverzeichnis nach dem
dortigen rootfs
Folder suchen.
Die manuelle Installation macht mir die Datenverwaltung wesentlich einfacher.