Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon.
Windows Subsystem for Linux, eller WSL, er en fin måte for utviklere som trenger å kjøre Linux og Windows å gjøre det uten å måtte sette opp en virtuell maskin eller dobbel oppstart.
En stor ny funksjon er muligheten til å kjøre systemd på WSL, noe som er nyttig for webutviklere som setter opp testmiljøer lokalt. Slik aktiverer og bruker du det.
Hvorfor installere systemd på WSL?
WSL-tjenester kjører som standard den eldre System V init-tjenesten, og tjenester startes med tjenestekommandoen. I september 2022, Microsoft lagt til alternativet for å bruke systemd for å administrere tjenester. De fleste store Linux-distribusjoner har allerede endret seg til systemd.
Til tross for kontroversen, i reell bruk, er det mye enklere å start og stopp tjenester med systemd. Det er også lettere å følge med andre Linux-opplæringer siden du ikke trenger å endre kommandoer så mye.
Et lokalt LAMP-testmiljø vil være nærmere en standard Linux-server, slik at appen din blir enklere å feilsøke.
Hvordan aktivere systemd på WSL
For å aktivere systemd, må du kjøre riktig versjon av WSL. systemd krever WSL versjon 0.67.6 eller høyere. Du kan sjekke versjonsnummeret ved å åpne PowerShell og skrive:
wsl --versjon
Hvis du har en eldre versjon installert og ønsker å bruke systemd, kan du oppdatere WSL ved å bruke:
wsl --Oppdater
Nå må du sette opp systemd i enhver distro du har installert med WSL. Prosessen er den samme på alle WSL-distro, enten det er Ubuntu, Debian, Fedora eller noe annet.
Bare rediger /etc/wsl.conf fil i systemet som root og legg til disse linjene:
[støvel]
systemd=ekte
Hvis filen wsl.conf ikke eksisterer, ikke bekymre deg og fortsett ved å lage den selv. Disse linjene vil fungere uansett.
Lagre filen, og nå må du starte alle kjørende WSL-distros på nytt. For å gjøre dette, åpne et PowerShell-vindu og skriv inn denne kommandoen:
wsl --skru av
Åpne en annen terminal, og du vil kunne administrere tjenester med systemd på WSL.
Starte og stoppe WSL-tjenester med systemd
Du kan nå bruke systemctl for å starte og stoppe tjenester i WSL.
Anta at du brukte Apache til å kjøre en lokal webserver for å teste en nettapp du utviklet.
Du kan starte Apache slik:
sudosystemctlstartapache2.service
Hvis du ville at den skulle starte automatisk, ville du aktivert den ved å bruke:
sudo systemctl aktivere apache2.service
Og deaktiver den med:
sudosystemctlStoppeapache2.service
Nå kan du kjøre systemd på WSL
Med de siste oppdateringene til WSL kan du nå aktivere systemd og starte og stoppe tjenester etter hvert som du trenger dem. Dette gjør WSL til et godt miljø for å utvikle webapplikasjoner, da du kan teste dem som om du brukte en hvilken som helst annen standard Linux-maskin.
Det er også ekstremt enkelt å installere en LAMP-server (Linux, Apache, MySQL, PHP) på Windows Subsystem for Linux.