Leser wie Sie helfen, MUO zu unterstützen. Wenn Sie über Links auf unserer Website einen Kauf tätigen, erhalten wir möglicherweise eine Affiliate-Provision.

Das Windows-Subsystem für Linux oder WSL ist eine großartige Möglichkeit für Entwickler, die Linux und Windows ausführen müssen, ohne eine virtuelle Maschine oder Dual-Boot einrichten zu müssen.

Eine wichtige neue Funktion ist die Möglichkeit, systemd auf WSL auszuführen, was für Webentwickler nützlich ist, die Testumgebungen lokal einrichten. Hier erfahren Sie, wie Sie es aktivieren und verwenden.

Warum systemd auf WSL installieren?

WSL-Dienste führen standardmäßig den älteren System V-Init-Dienst aus, und Dienste werden mit dem Dienstbefehl gestartet. September 2022, Microsoft Option zur Verwendung von systemd zum Verwalten von Diensten hinzugefügt. Die meisten großen Linux-Distributionen haben bereits auf systemd umgestellt.

Trotz der Kontroverse ist es in der Praxis viel einfacher starten und stoppen Sie Dienste mit systemd. Es ist auch einfacher, anderen Linux-Tutorials zu folgen, da Sie Befehle nicht so oft ändern müssen.

instagram viewer

Eine lokale LAMP-Testumgebung ist näher an einem Standard-Linux-Server, sodass Ihre App einfacher zu debuggen ist.

So aktivieren Sie systemd in WSL

Um systemd zu aktivieren, müssen Sie die richtige Version von WSL ausführen. systemd erfordert WSL-Version 0.67.6 oder höher. Sie können die Versionsnummer überprüfen, indem Sie PowerShell öffnen und Folgendes eingeben:

wsl --Ausführung

Wenn Sie eine ältere Version installiert haben und systemd verwenden möchten, können Sie WSL aktualisieren mit:

wsl --aktualisieren

Jetzt müssen Sie systemd in jeder Distribution einrichten, die Sie mit WSL installiert haben. Der Prozess ist bei jeder WSL-Distribution gleich, egal ob Ubuntu, Debian, Fedora oder etwas anderes.

Bearbeiten Sie einfach die /etc/wsl.conf Datei in Ihrem System als root und fügen Sie diese Zeilen hinzu:

[Stiefel]
systemd=WAHR

Wenn die Datei wsl.conf nicht vorhanden ist, machen Sie sich keine Sorgen und fahren Sie fort, indem Sie sie selbst erstellen. Diese Zeilen funktionieren trotzdem.

Speichern Sie die Datei, und jetzt müssen Sie alle laufenden WSL-Distributionen neu starten. Öffnen Sie dazu ein PowerShell-Fenster und geben Sie diesen Befehl ein:

wsl --abschalten

Öffnen Sie ein weiteres Terminal, und Sie können Dienste mit systemd in WSL verwalten.

Starten und Stoppen von WSL-Diensten mit systemd

Sie können jetzt verwenden systemctl zum Starten und Stoppen von Diensten in WSL.

Angenommen, Sie verwenden Apache, um einen lokalen Webserver auszuführen, um eine von Ihnen entwickelte Webanwendung zu testen.

Sie würden Apache folgendermaßen starten:

sudosystemctlStartapache2.Service

Wenn Sie möchten, dass es automatisch startet, aktivieren Sie es mit:

sudo systemctl aktiviert apache2.service

Und deaktivieren Sie es mit:

sudosystemctlstoppenapache2.Service

Jetzt können Sie systemd auf WSL ausführen

Mit den neuesten Updates für WSL können Sie jetzt systemd aktivieren und Dienste nach Bedarf starten und stoppen. Dies macht WSL zu einer guten Umgebung für die Entwicklung von Webanwendungen, da Sie sie testen können, als ob Sie jeden anderen Standard-Linux-Computer verwenden würden.

Es ist auch extrem einfach, einen LAMP-Server (Linux, Apache, MySQL, PHP) auf dem Windows-Subsystem für Linux zu installieren.