Sådan aktiveres systemd i Windows Subsystem for Linux (WSL)

Om systemd i Linux er godt eller dårligt vil afhænge af, hvem du taler med, men det er vigtigt, så meget, at nogle af de Windows-undersystem til Linux (WSL) samfundet havde bygget deres egne måder at implementere det på. Microsoft har gjort arbejdet nu, dog i samarbejde med Canonical for officielt at implementere systemd i WSL.

I første omgang er den dog ikke kun tilgængelig for alle og aktiveret som standard. Du har også mulighed for at deaktivere det når som helst, når du har aktiveret det. Her er hvad du behøver at vide.

Hvad er systemd?

\r\n https://www.youtube.com/watch? v=Ja3qikzd-as\r\n

Den korte, officielle beskrivelse af systemd er:

Systemd er en suite af grundlæggende byggeklodser til et Linux-system. Det giver en system- og servicemanager, der kører som PID 1 og starter resten af ​​systemet.

Nogle af de mest populære Linux-distros derude bruger allerede systemd som standard på bare metal-installationer. Nogle af disse, såsom Ubuntu og Debian, er også tilgængelige på WSL.

Inkluderingen af ​​systemd på WSL bringer værktøjet endnu tættere på oplevelsen af ​​at køre Linux. Det er også påkrævet for nogle værktøjer, som nu er let anvendelige på WSL, såsom snap, microk8s og systemctl.

Hvad du skal bruge for at få systemd i WSL

Hvis du bruger in-Windows-versionen af ​​WSL, det vil sige den, du aktiverede via PowerShell og ikke downloadede fra butikken, har du ikke systemd i starten. Kun dem, der bruger en Insider-build af Windows 11, eller dem, der bruger WSL som downloadet fra Microsoft Store, vil have det. Det versionsnummer, du skal bruge, er 0.67.6 og derover.

For at kontrollere, om du har den rigtige version, skal du blot åbne et PowerShell-vindue og gå ind wsl --version og tjek svaret. Hvis det er under 0.67.6, skal du gå til Microsoft Store og download WSL. Alternativt kan du hente den seneste udgivelse fra WSL GitHub repo.

I fremtiden vil alle brugere få systemsupport tilføjet, og du kan tjekke for eventuelle opdateringer til WSL ved at indtaste wsl --opdatering i PowerShell.

Alternativt, hvis du bruger Ubuntu Preview på WSL, tilføjes systemd automatisk.

Sådan aktiverer du systemd

For at aktivere systemd, i det mindste lige nu, skal du tilføje en instruktion til din wsl.conf fil. Dette er en konfigurationsfil, der findes i enhver WSL Linux-distro, og giver dig mulighed for at konfigurere på en per-distro-basis i stedet for at ændre globale WSL-indstillinger.

Det er en simpel tekstfil, så du skal blot åbne den i en teksteditor. I dette eksempel bruger vi Nano. Åbn din wsl.conf i din valgte Linux-distro ved at indtaste følgende:

sudo nano /etc/wsl.conf

Du vil nu højst sandsynligt se på et tomt dokument, medmindre du tidligere har bygget din egen konfigurationsfil.

For at aktivere systemd skal du blot indtaste dette i din wsl.conf-fil:

[boot]
systemd=true

Nu kan du blot gemme og afslutte filen (CTRL+O for at gemme og CTRL+X for at afslutte). Herfra skal du lukke din WSL-session helt ned. Luk ud af Linux og gå tilbage til et PowerShell-vindue og indtast:

wsl.exe--shutdown

Dette vil lukke WSL helt ned på din maskine. Nu skal du blot genåbne din Linux-distro. Den første opstart kan tage et par sekunder længere, men når den er færdig, vil du have systemd kørende. Du kan kontrollere, at det fungerer ved hjælp af systemctl, en af ​​de tjenester, der er afhængige af systemd:

systemctl list-unit-files --type=service

Du bør se en liste over de kørende tjenester nu. Det er alt, hvad der er for at aktivere systemd. Og selvfølgelig, ved at ændre til false i din wsl.conf kan du til enhver tid slå den fra, hvis du ønsker det.

Brug snap på Ubuntu på WSL

En af de ekstra bonusser ved at bruge systemd på Ubuntu på WSL er, at snap nu fungerer korrekt. Ikke alle vil køre for at bruge det, men det er en anden funktion, WSL-brugere har adgang til. Og der er nogle nyttige snap-pakker, du måske vil prøve.

Nextcloud er for eksempel et open source-alternativ til Microsoft 365 og Googles cloud-apps og -lagring. Nextcloud snap er en af ​​de bedste måder at installere det på Linux, og det er nu åbent på WSL. Installation af snaps er det samme som at bruge apt (eller en hvilken som helst anden pakkehåndtering), der erstatter snap in place:

sudo snap install nextcloud

Du kan hurtigt finde tilgængelige snaps ved at tjekke ud snapcraft.io.