En Dypdykk i WSL2: Funksjoner og Bruk
Windows og Linux er to av de mest brukte operativsystemene. Windows er kjent for sin brukervennlighet, mens Linux skiller seg ut med sine omfattende tilpasningsmuligheter, noe som gjør det populært blant utviklere, produktive brukere og studenter.
For å bruke begge systemene samtidig, har man tradisjonelt måttet ty til virtualisering eller en såkalt «dual-boot»-løsning.
Men det finnes nå en ny funksjon i Windows som gjør det mulig å få enkel tilgang til Linux direkte fra Windows-miljøet.
Dette er Windows Subsystem for Linux 2, eller WSL2, som det gjerne forkortes. Dette er en Windows-funksjon som gir deg tilgang til Linux inne i Windows.
Denne artikkelen skal ta for seg WSL2 i detalj. Vi skal gå gjennom definisjonen, formålet, installasjonsprosessen og hvordan du bruker den på en effektiv måte.
La oss sette i gang!
Hva er Windows Subsystem for Linux?
Windows Subsystem for Linux gir deg mulighet til å bruke et GNU/Linux-miljø rett fra Windows-terminalen. Dermed trenger man ikke lenger å dual-boote eller bruke virtualiseringsprogrammer. Det gir tilgang til Linux-kjernen, slik at du kan bruke Linux-funksjoner direkte fra Windows, inkludert kommandolinjeverktøy, applikasjoner og verktøy.
WSL2 er den nyeste versjonen av Windows Subsystem og gir bedre funksjoner og høyere hastighet enn WSL1 (som ble lansert sammen med Windows 10). De fleste Windows-installasjoner kommer med WSL forhåndsinstallert, men for å kunne bruke den må den aktiveres.
WSL2 bruker Windows Hyper-V virtualiseringsteknologi under panseret. Dette gjør at WSL2 er Linux-kompatibelt og gir nesten 20 ganger raskere utførelseshastigheter sammenlignet med WSL1.
Kort sagt, WSL2 er det nyeste Windows-undersystemet for Linux, som gir Windows-brukere direkte tilgang til Linux-kjernen.
Komme i gang med WSL2
I denne veiledningen skal vi også bruke Windows Terminal, et praktisk og anbefalt alternativ for å jobbe med terminaler i Windows. Dette er en moderne, rask og effektiv terminal for brukere som ønsker å jobbe med kommandolinjeverktøy og WSL.
PC-krav
Ikke alle PC-er kan kjøre WSL2. Systemet ditt må støtte virtualisering for å kunne kjøre WSL2, ettersom det bruker Hyper-V-teknologi.
Du trenger også en 64-bit prosessor med støtte for SLAT (Second Level Address Translation). De fleste moderne CPU-er støtter dette.
Når det gjelder lagringsplass, trenger du minst 1 GB ledig plass.
Aktivere virtualisering fra BIOS
Hvis du oppfyller maskinvarekravene, må du aktivere virtualisering fra hovedkortets BIOS.
Du går inn i BIOS ved å trykke på tastene F2, Del eller F10. Hvilken tast som er riktig, kan variere.
I BIOS må du finne og aktivere AMDs Secure Virtual Machines (SVM)/Intels Virtualization Technology VTx. Når det er gjort, må du starte maskinen på nytt.
Hvis du trenger mer veiledning, kan du finne detaljerte instruksjoner i et annet innlegg som omhandler hvordan du installerer Ubuntu på Windows 10 ved hjelp av Hyper-V.
Aktivere Windows-funksjoner for WSL2
Når maskinvarekravene er oppfylt, er det på tide å aktivere WSL2 fra Windows.
Første steg er å sjekke Windows-versjonen din, for å se om den støtter WSL eller ikke.
Dette gjør du ved å trykke på CMD + R på tastaturet og skrive «winver». Dette vil vise din Windows-versjon.
Dersom du bruker Windows 10, har du sannsynligvis WSL1. De fleste Windows 11-brukere har derimot WSL2.
Alle versjoner av Windows 10 og 11 støtter WSL2, med unntak av Windows S, som er fokusert på sikkerhet og har virtualisering deaktivert.
Om du bruker Windows S må du bytte til en annen versjon, som Windows Home eller Pro.
Dette gjøres ved å gå til Innstillinger > Oppdatering og sikkerhet > Aktivering.
Du må også ha de nyeste Windows-oppdateringene installert. Dette for å sikre fullstendig kompatibilitet og støtte for WSL2. Du oppdaterer systemet ved å gå til Innstillinger > Windows Update.
For å bruke WSL2 må flere Windows-funksjoner aktiveres.
Gå til Kontrollpanel > Programmer og funksjoner. Der finner du «Slå Windows-funksjoner på eller av». Klikk på den, og et nytt vindu, «Windows-funksjoner», vil åpnes.
Her må du lete etter «Hyper-V», «Virtual Machine Platform» og «Windows Subsystem for Linux».
Systemet vil be om en omstart for at endringene skal tre i kraft.
Du kan også aktivere funksjonene ved å kjøre følgende kommandoer:
$ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart $ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Installere WSL2
Med alle forutsetninger på plass, er det nå tid for å installere WSL.
Åpne Windows Terminal (Windows 10) eller Windows PowerShell (Windows 11), og skriv inn følgende kommando:
$ wsl
Dette gir følgende output:
Copyright (c) Microsoft Corporation. All rights reserved. Usage: wsl.exe [Argument] Arguments: …..
Dette betyr at WSL er tilgjengelig, men ikke aktivert.
For å installere WSL må du kjøre følgende kommando med administratorrettigheter:
$ wsl --install
Dette kan gi følgende output:
PS C:UsersLogan99> wsl --install Installing: Virtual Machine Platform Virtual Machine Platform has been installed. Installing: Windows Subsystem for Linux Windows Subsystem for Linux has been installed. Installing: Ubuntu Ubuntu has been installed. The requested operation is successful. Changes will not be effective until the system is rebooted.
Merk: Det kan være at du ikke ser denne outputen, ettersom du har aktivert funksjonene gjennom Windows-funksjoner. I så fall bør du få følgende output (og du kan hoppe over til neste seksjon):
Ubuntu is already installed. Launching Ubuntu... Installing, this may take a few minutes... Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms/wslusers Enter new UNIX username: New password: Retype new password:
For å sjekke WSL-versjonen, skriv kommandoen `wsl –version`:
$ wsl --version
Dette kan gi følgende output:
WSL version: 1.1.6.0 Kernel version: 5.15.90.1 WSLg version: 1.0.50 MSRDC version: 1.2.3770 Direct3D version: 1.608.2-61064218 DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp Windows version: 10.0.22621.1413
Som du ser, kommer WSL versjon 1.1.6.0 forhåndsinstallert. Hvis det ikke fungerer og gir en feilmelding, er WSL ikke installert.
For å endre til WSL2, kjør følgende kommando:
$ wsl --set-default-version 2
Siden systemet vårt allerede har WSL forhåndsinstallert, får vi denne meldingen.
Du kan også installere WSL fra Windows Store. Åpne Store og søk etter «Windows Subsystem for Linux».
Klikk «Hent» og vent til den er installert.
Når den er installert, kan du klikke «Åpne». Da åpnes en Windows-terminal med meldingen «Windows Subsystem for Linux har ingen installerte distribusjoner».
Installere distribusjon på WSL
Nå som WSL er installert, er det tid for å installere Linux-distribusjoner.
Som standard installerer WSL Ubuntu LTS-versjonen. Dette gjøres ved å kjøre følgende kommando:
$ wsl --install
Dette vil starte installasjonen av Ubuntu. Du vil bli bedt om å angi et nytt UNIX-brukernavn og passord under installasjonen.
Når installasjonen er ferdig, får du en Ubuntu Linux-prompt. Her kan du bruke alle Linux-kommandoer. La oss sjekke Ubuntu-versjonen:
$ lsb_release -a
Dette kan gi følgende output:
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.1 LTS Release: 22.04 Codename: jammy
Det er det! Du har nå tilgang til Linux-kjernen.
For å avslutte distribusjonen må du skrive inn følgende kommando:
$ exit
Dette gir følgende output:
[email protected]:/mnt/c/Users/Logan99$ exit logout
Installere flere distros
På samme måte kan du installere andre distribusjoner, som Fedora, Debian og OracleLinux_8_5. For å se de tilgjengelige distribusjonsalternativene, skriv følgende kommando:
$ wsl --list --online
For å installere Debian, må vi skrive inn følgende kommando:
$ wsl --install -d Debian Or $ wsl.exe --install Debian
Som med Ubuntu, vil du bli bedt om å opprette et brukernavn og passord.
La oss nå sjekke Debian-versjonen:
$ cat /etc/issue
Dette kan gi følgende output:
$ Debian GNU/Linux 11 n l
Men hva med Fedora? Den dukker ikke opp når du bruker kommandoen `wsl –list –online`.
Vel, du kan også installere distribusjoner fra Windows Store.
Åpne Windows Store og søk etter Linux-distribusjoner. Da vises alle de tilgjengelige. Her ser du kun de offisielle støttede distribusjonene.
For uoffisiell distribusjonsstøtte må du søke manuelt. Disse uoffisielle distribusjonene kan være ustabile og ikke 100% sikre, så bruk dem kun for eksperimentering.
Klikk på «Installer» for å gjøre den tilgjengelig på systemet ditt.
Angi standard distro
For å se listen over tilgjengelige distribusjoner, kan du liste dem opp med følgende kommando:
$ wsl --list
Nøkkelordet «Standard» ved siden av Ubuntu betyr at standard Linux-distribusjonen starter når du skriver «wsl» i ledeteksten.
For å endre standard distribusjon, skriv inn følgende kommando:
$ wsl --setdefault <DistroName>
Så for å sette Debian som vår standard distribusjon, må vi skrive inn følgende kommando:
$ wsl --setdefault Debian
Neste gang du skriver `wsl` i terminalen, vil Debian starte.
Bytte WSL-versjon for Distro
Som standard bruker distribusjonene WSL2. For å liste opp de nåværende installerte distribusjonene og deres WSL-versjon, skriv følgende kommando:
$ wsl --list --verbose
Dette kan gi følgende output:
NAME STATE VERSION * Ubuntu Stopped 2 Debian Stopped 2
Her refererer * til standard Linux-installasjonen.
For å endre WSL-versjonen fra 2 til 1, skriv inn:
$ wsl --set-version Ubuntu 1
Og hvis du ønsker å bytte tilbake til 2 fra 1, skriver du:
$ wsl --set-vesion Ubuntu 2
Merk: Konverteringen kan ta litt tid. Ikke lukk vinduet under konverteringen.
Lansere spesifikke distribusjoner med forskjellige brukernavn
Hva om du vil starte en bestemt distribusjon? For å gjøre det, må du skrive følgende kommando:
$ wsl -d <DistroName> Or $ wsl --distribution <DistroName>
For å starte Ubuntu, skriver du inn:
$ wsl -d Ubuntu
Hvis du ønsker å starte den med et bestemt brukernavn, må du legge til `–user` etterfulgt av brukernavnet.
$ wsl -d <DistroName> --user <UserName>
For eksempel for å starte Debian med et «root»-brukernavn:
$ wsl -d Debian --user root
Merk: Å starte distribusjonen med en ikke-eksisterende bruker vil føre til feilmeldingen «Bruker ikke funnet».
Oppdater Linux
Du kan oppdatere Linux-distribusjonen din ved å skrive følgende kommando:
$ sudo apt update $ sudo apt upgrade
I tillegg kan du se etter Linux-kjerneoppdateringer for WSL:
$ wsl --update
Sette opp Visual Studio Code med WSL2
Du kan også sette opp VS Code slik at den fungerer med WSL. Da kan du få tilgang til WSL-terminalen direkte fra VS Code. Dette kan hjelpe deg med å utvikle applikasjoner på Linux-baserte applikasjoner, samtidig som du får tilgang til Linux-spesifikke verktøy.
I tillegg kan du også få tilgang til Windows-spesifikke produktivitetsverktøy samtidig som du drar nytte av VS Code-funksjoner.
For å få dette til å fungere, må du installere utvidelsespakken for ekstern utvikling. Du kan også søke etter den direkte fra VS Code ved å søke etter navnet i utvidelsesfanen.
Hvis du jobber lokalt, kan du sette det opp ved å gå til VS Code-menyen. Der velger du Vis > Terminal.
Dette åpner terminalen. Du finner symbolet `>` ved siden av symbolet `+`. Klikk på den, og du vil finne WSL-terminalene i listen.
Her kan du også velge «Standardprofil».
Dette er mulig fordi VS Code har direkte tilgang til \\wsl$ og alle feilsøkere som kjører på localhost.
Arbeide med grafiske applikasjoner og WSL2
For å jobbe med grafiske applikasjoner må du installere de riktige driverne for WSL2. Intel, AMD og Nvidia tilbyr drivere for WSL slik at Linux-baserte grafiske applikasjoner kan fungere problemfritt.
Du kan imidlertid fortsatt oppleve problemer med denne tilnærmingen. For det første kan noen funksjoner i de grafiske applikasjonene ikke fungere. Mange apper vil kanskje heller ikke fungere, så du må se etter alternativer.
Kort sagt er det hovedsakelig en prøv-og-feil-metode, der du kan bruke mye tid.
Du kan sjekke WSL2-guiden deres for å lære mer om å jobbe med grafiske applikasjoner ved hjelp av Ubuntu.
Docker Desktop WSL2 på Windows
Hvis du ikke ønsker å sette opp lokalt ved hjelp av Hyper-V, kan du bruke Docker Desktop, som offisielt støtter WSL2. Med den kan du sette opp en raskere arbeidsflyt for å bruke Docker-verktøy direkte på Windows. For å lære mer, sjekk ut veiledningen deres.
Hvorfor tar Microsoft Linux på alvor?
Microsoft er et proprietært selskap. De lager løsninger som Windows i et lukket miljø, og de ønsker at brukerne skal holde seg til Windows fremfor Linux.
I 2016 kunngjorde de imidlertid en forpliktelse til åpen kildekode. Dette var en endring fra deres syn tidligere, da Steve Ballmer i 2001 kalte Linux en «kreft».
I 2023 har ting endret seg. Microsoft tar Linux direkte inn i sitt økosystem. De kunngjorde WSL2 i mai 2019 og introduserte WSL2 i oktober 2021 i Windows Store. De ga også ut WSL2 v1.0 i november 2022.
De har også gjort Microsoft-programvare som Edge og Teams tilgjengelig for Linux-brukere. De bidrar også aktivt til Linux-kjernen og er et produktmedlem av Linux Foundation.
Alle disse tingene tyder på at Microsoft tar Linux på alvor. Noen skeptikere tror imidlertid ikke at Microsoft elsker Linux.
Kort sagt, Microsoft er interessert i Linux. Windows-undersystemet deres er et bevis på at de bryr seg om Linux og åpen kildekode. Men viktigst av alt, det forteller oss at de ønsker at brukerne deres skal ha sømløs tilgang til Linux-kjernen uten å måtte bruke virtualisering eller «dual-boote» til et Linux-operativsystem.
Siste ord
I en tid der spørsmålet «hvilket OS er best for utviklere» er relevant, kan utviklere velge en måte å få tilgang til begge deler. WSL2 gir tilgang til Linux-kjernen gjennom ulike Linux-distribusjoner. I tillegg er den rask og fungerer med Docker.
WSL2 er for tiden i aktiv utvikling, og de jobber med å løse kompatibilitetsproblemer og gi mer makt til utviklerne. Fremtiden ser lys ut for WSL2, og Microsoft tar alle skritt for å gjøre Linux-kjernen tilgjengelig for sine Windows-brukere.
Du kan sjekke ut en oversikt over Linux-distribusjoner for å lære mer om de du kan bruke som systemadministrator og utvikler.