Installasjonsguider

WSL-installasjon: Linux på Windows

Vi forklarer hvordan du installerer WSL 2 og Ubuntu på Windows og får et ekte Linux-utviklingsmiljø, kobler det til VS Code og Docker og løser vanlige feil.

Aurora YazılımRedaksjonen 6 min lesetid
WSL-installasjon: Linux på Windows
Hvordan installerer du WSL?

For å installere WSL åpner du PowerShell som administrator og kjører kommandoen wsl --install. Kommandoen slår på nødvendige Windows-funksjoner og laster ned WSL 2-kjernen og Ubuntu som standard distribusjon. Etter omstart åpnes Ubuntu, og du oppretter et Linux-brukernavn og passord. Du bekrefter installasjonen med wsl -l -v.

Hva er WSL, og hva brukes det til?

WSL (Windows Subsystem for Linux), på norsk Windows-delsystemet for Linux, er en Microsoft-funksjon som lar deg kjøre et ekte Linux-miljø inne i Windows. Uten å sette opp en virtuell maskin eller dobbel oppstart åpner du en Ubuntu-terminal, installerer pakker med apt og kjører bash-skript.

I webutvikling kjører de aller fleste servere Linux. Når miljøet du utvikler i ligner på produksjonsserveren, slipper du feil med filstier, tillatelser og store og små bokstaver som ellers først dukker opp i produksjon. Node.js, Python, PHP, Ruby og de fleste databaseverktøy installeres mer problemfritt på Linux.

Forskjellen på WSL 1 og WSL 2

WSL 2 kjører en ekte Linux-kjerne i en lett virtuell maskin. Det gjør at verktøy som trenger kjernefunksjoner, som Docker, fungerer, og operasjoner inne i Linux-filsystemet går veldig raskt. WSL 1 oversetter Linux-kall til Windows. Det kan av og til være raskere ved tilgang til Windows-filer, men kompatibiliteten er lavere. Ved nye installasjoner er standardversjonen WSL 2, og det er riktig valg for de fleste brukere.

Forutsetninger

WSL er en funksjon kun for Windows. Brukere av macOS og Linux trenger den ikke, siden en Unix-basert terminal allerede finnes på de systemene. På Windows-siden kreves noen forutsetninger.

  • Windows 11 eller Windows 10 versjon 2004 (build 19041) eller nyere. Du kan se versjonen din med kommandoen winver.
  • Virtualisering (Intel VT-x eller AMD-V/SVM) må være slått på i BIOS/UEFI-innstillingene. Sjekk at det står Virtualisering: Aktivert under CPU i Ytelse-fanen i Oppgavebehandling.
  • En brukerkonto med administratorrettigheter.
  • Noen GB ledig diskplass til distribusjonen og verktøy.

Installer WSL 2 med én kommando

Høyreklikk på PowerShell i Start-menyen og velg Kjør som administrator. Kommandoen nedenfor slår på funksjonene WSL og Virtual Machine Platform, laster ned Linux-kjernen og installerer Ubuntu.

  1. Start datamaskinen på nytt når installasjonen er ferdig.
  2. Ved oppstart åpnes Ubuntu-vinduet av seg selv og pakker ut filene. Det kan ta noen minutter.
  3. Velg et Linux-brukernavn og passord. Denne kontoen er uavhengig av Windows-kontoen din, og passordet brukes når du kjører sudo-kommandoer.
  4. Oppdater pakkelisten og oppgrader systemet.
powershellPowerShell som administrator
wsl --install

Første oppdatering og bekreftelse

Oppdater pakkene i Ubuntu-terminalen, og list deretter installerte distribusjoner og versjoner i PowerShell. Ser du 2 i VERSION-kolonnen, kjører WSL 2.

bashUbuntu-terminal
sudo apt update && sudo apt upgrade -y
powershellPowerShell
wsl -l -v
wsl --status

Velge og administrere distribusjoner

Standarddistribusjonen er Ubuntu, men Debian, openSUSE og andre distribusjoner kan også installeres. Å kjøre Ubuntu på Windows er den enkleste veien i starten, siden det stemmer overens med de fleste veiledninger og dokumentasjon.

  • wsl --list --online viser distribusjonene som kan installeres.
  • wsl --set-version flytter en distribusjon installert med WSL 1 til WSL 2.
  • wsl --shutdown slår av alle distribusjoner og den virtuelle WSL-maskinen. Det trengs etter endringer i innstillinger.
  • For å ta sikkerhetskopi av en distribusjon brukes wsl --export, og for å gjenopprette den wsl --import.
powershellVanlige WSL-kommandoer
wsl --list --online
wsl --install -d Debian
wsl --set-default Ubuntu
wsl --set-default-version 2
wsl --set-version Ubuntu 2
wsl --update
wsl --shutdown

Hvor bør filene ligge?

I WSL lever to filsystemer side om side. Windows-diskene vises fra Linux med stier som /mnt/c, mens Linux-filene åpnes i Windows Utforsker på adressen \\wsl.localhost\Ubuntu. For enkel tilgang i Utforsker kan du skrive explorer.exe . i Ubuntu-terminalen.

Gullregelen er: Ha prosjektfilene i Linux-filsystemet (for eksempel /home/bruker/prosjekter). npm install, git status eller byggekommandoer som kjører under /mnt/c blir merkbart tregere på grunn av oversettelsen mellom de to systemene, og filovervåking (hot reload) fungerer av og til ikke i det hele tatt. Hastigheten på utviklingsmiljøet påvirker teamets produktivitet like mye som arbeid på publiseringssiden, for eksempel hastighet og ytelse.

Koble til VS Code, Git og Docker

Det som gjør WSL virkelig sterkt, er at det fungerer sammen med verktøyene i Windows. Koderedigereren åpnes i Windows, men kommandoer, utvidelser og terminal kjører i Linux.

VS Code

Installer Microsofts WSL-utvidelse i VS Code. Går du inn i prosjektmappen i Ubuntu-terminalen og skriver code ., åpnes redigereren i WSL-modus, og tilkoblingsindikatoren vises nederst til venstre.

Git

Konfigurer Git separat i Linux. Git-innstillingene i Windows overføres ikke til WSL. For detaljerte innstillinger kan du se guiden vår om Git-installasjon.

bash
sudo apt install git -y
git config --global user.name 'Ad Soyad'
git config --global user.email ad@ornek.com
git config --global core.autocrlf input

Docker

Docker Desktop bruker WSL 2-baserte motoren i innstillingene og integreres med distribusjonene du velger. Da kan du kjøre docker-kommandoer fra Ubuntu-terminalen. Trinnene står i artikkelen om Docker-installasjon. Vil du installere databasen direkte i Ubuntu i stedet for i en container, fungerer Linux-trinnene i guiden for PostgreSQL-installasjon helt likt i WSL.

Typisk utviklingsflyt i WSL

Når installasjonen er ferdig, setter det daglige arbeidet seg i et oppsett på noen få trinn. Du åpner Ubuntu-terminalen, går til prosjektmappen i hjemmekatalogen og starter redigereren med code . Du installerer Node.js med nvm, Python med venv og databasen med apt eller Docker. Alt kjører med de samme kommandoene som Linux-miljøet på den ekte serveren.

Dette oppsettet gjør størst forskjell i prosjekter der flere systemer snakker sammen. Å teste integrasjonskoden som kommuniserer med lager-, frakt- og regnskapstjenestene til en butikk lokalt på Linux, gir færre overraskelser ved publisering. Bransjespesifikke programvareløsninger for reservasjon eller annonsehåndtering kjører også oftest på Linux-servere, så de utvikles og prøves i samme miljø.

Jobber dere som team, forhindrer det problemer av typen det fungerer hos meg, men ikke hos deg at alle bruker samme distribusjon og samme verktøyversjoner. Å skrive installasjonstrinnene i en README-fil eller et oppsettskript gjør at en nykommer får miljøet klart på noen minutter.

Innstilling av minne og ressurser

WSL 2 bruker minne etter behov og kan gjøre Windows tregere ved lange økter. For å sette en grense oppretter du filen .wslconfig i brukermappen din i Windows (C:\Users\bruker). Etter endringen starter du WSL på nytt med wsl --shutdown.

ini.wslconfig
[wsl2]
memory=4GB
processors=2

Vanlige feil og løsninger

De fleste feil ved WSL-installasjon skyldes at virtualisering er slått av eller at Windows-komponenter mangler. Noter feilkoden og sammenlign den med tabellen nedenfor.

FeilHvorforLøsning
0x80370102Virtualisering er slått avSlå på VT-x eller SVM i BIOS/UEFI
0x8007019eWSL-funksjonen er ikke aktivertKjør kommandoen på nytt i PowerShell som administrator, eller slå på funksjonen manuelt
wsl --install viser bare hjelpetekstenWSL er allerede installertBruk wsl --list --online og wsl --install -d Ubuntu
Ingen internett, apt fungerer ikkeKonflikt med VPN eller DNSSlå av VPN og prøv igjen, åpne på nytt etter wsl --shutdown
Prosjektet er veldig tregtFilene ligger under /mnt/cFlytt prosjektet til Linux-hjemmekatalogen
powershellSlå på komponentene manuelt
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

Vanlige spørsmål

01Gjør WSL Windows tregere?

WSL bruker bare ressurser når du bruker det, og når det er av, er påvirkningen nesten null. Ved lange økter kan minnebruken øke, og du kan begrense den med .wslconfig. Kommandoen wsl --shutdown frigir også ressursene umiddelbart.

02Kan Linux-applikasjoner med grafisk grensesnitt kjøre i WSL?

I Windows 11 og oppdaterte versjoner av Windows 10 kan Linux-applikasjoner med grafisk grensesnitt åpnes direkte på Windows-skrivebordet med støtte fra WSLg. Til de fleste utviklingsoppgaver trengs ikke det. Terminal og VS Code er nok.

03Kan WSL erstatte en server?

Nei. WSL er et utviklingsmiljø. Det stopper når datamaskinen slås av og er ikke laget for tilgang utenfra. For en live nettside eller applikasjon bør du bruke en ekte server eller et skymiljø.

04Kan jeg fjerne WSL helt?

Ja. Slett først distribusjonene med wsl --unregister. Det sletter alle filene i dem permanent. Deretter kan du slå av WSL og Virtual Machine Platform i Windows-funksjoner.

WSL-installasjon gir en utvikler på Windows et arbeidsmiljø som snakker samme språk som produksjonsserveren. Leter du etter bransjespesifikke programvareløsninger som er utviklet for virksomheten din og kjører trygt på Linux-servere, kan du se på produktene våre. For et skreddersydd webdesign- eller integrasjonsprosjekt kan du ta kontakt via kontaktsiden.