Installera Bash i Windows med WSL och Ubuntu

By . Latest revision .

Så här gör du för att installera Bash med Ubuntu i Windows via WSL samt tar hjälp av pakethanteraren och installerar det som behövs för att komma igång med kurserna.

#Mer information

Denna artikel bygger på informationen som finns att läsa i “Windows Subsystem for Linux Documentation”. Om du tappar bort dig eller behöver extra information så kan du gå och läsa den större artikeln i lugn och ro.

Läs vidare för den “snabba vägen” att komma igång med Bash/WSL i Windows.

#Förutsättning

Du behöver minst Windows 10 version 2004 eller högre (Build 19041 och högre) eller Windows 11.

Dubbelkolla att du har en Windows build 19041, eller senare, genom att trycka Windows key + R och köra programmet winver.

Build 19041 eller högre behöver vara installerad.

Build 19041 eller högre behöver vara installerad.

Om du har äldre version av Windows så rekommenderas att du uppdaterar tll senaste utgåvan.

Alternativet är att välja ett annat sätt att installera WSL, för detaljer se dess dokumentationen i “Install Linux on Windows with WSL”.

#Installera WSL

WSL finns med i din Windows installation men du behöver initiera det på följande sätt.

#Installera kommandot wsl

Kommandot wsl.exe behövs för att aktivera de funktioner som krävs för att köra WSL och för att installera Ubuntu-distributionen av Linux inuti Windows.

Starta terminalen PowerShell och kör följande kommando för att initiera kommandot wsl.exe.

wsl --install

Den kan se ut så här, precis innan du startar installationen genom att trycka ENTER.

Skriv in kommandot för att installera wsl i PowerShell.

Skriv in kommandot för att installera wsl i PowerShell.

När kommandot är klart så startar du om din maskin.

#Vanliga fel

Det är ganska vanligt att man får fel när man kör kommandot ovanför. Här kan ni se de fel vi har stött på tidigare och lösningar på dem.

Om ditt fel inte finns med i listan kan du kolla om det finns med här Kända fel och lösningar.

Hittar du inte din felkod eller ditt problem så letar du vidare i “Troubleshooting Windows Subsystem for Linux: Installation issues”. Sök efter din felkod.

Du kan även skriva i Discord chatten, men se alltid om du kan hitta en referens till din felkod först.

#Installera Ubuntu i WSL

När maskinen har bootat kan du återigen öppna PowerShell och köra följande kommandon för att se att processen gick bra.

wsl --list --online

Det kan se ut ungefär så här.

WSL är installerat och du kan nu installera Linux distributionen Ubuntu.

WSL är installerat och du kan nu installera Linux distributionen Ubuntu.

Vi väljer att installera distributionen för Ubuntu.

wsl --install --distribution Ubuntu
Förberedd för att installera distributionen Ubuntu i WSL.

Förberedd för att installera distributionen Ubuntu i WSL.

I slutet av processen skall du skapa en användare och ett lösenord i Ubuntu. Detta är din specifika användare inuti Ubuntu och har inget att göra med din Windows-användare. Välj ett kort användarnamn och ett kort lösenord så blir det smidigt att använda. Använd inte mellanslag eller svenska tecken i användarnamnet.

Så här ser resultatet ut när du är klar med att installera Ubuntu i WSL.

Så här ser resultatet ut när du är klar med att installera Ubuntu i WSL.

Om det står något i stil med root@desktop:~# (det är root du ska ha utkik efter) istället för användarnamnet du valde (på bilden är det mos), då behöver du göra om installationen så att ditt användarnamn skapas korrekt. Avinstallera först WSL genom att öppna PowerShell och kör kommandot wsl --unregister Ubuntu. Gör sen om installationen och skriv in användarnamn och lösenord när det efterfrågas.

Nu är du klar med installationen av Ubuntu i WSL i Windows och du har tillgång till en bash-terminal som krävs för kurserna.

#Starta Ubuntu

Du kan nu starta Ubuntu genom att köra kommandot ubuntu via sökfältet eller via Windows key + R.

Det kan se ut så här.

Nu har du tillgång till en bash terminal, via Ubuntu och WSL.

Nu har du tillgång till en bash terminal, via Ubuntu och WSL.

Du har nu en Linux-terminal, en bash terminal, i din Windows.

Fortsätt nu att konfigurera din terminal.

#Pakethantering

För att installera program så använder du en pakethanterare som heter apt. Med den kan du installera paket, tjänster och programvaror i din terminal.

#Uppdatera och uppgradera

Vi börjar med att uppdatera installationen med senaste informationen om de paket som finns och vi uppgraderar systemet till att använda senaste versionen av paketen.

sudo apt update && sudo apt -y upgrade

När du kör ett kommando med sudo så kör du det som root-användaren med extra behörigheter. När du installerar med pakethanteraren behöver du göra det.

Det tar en liten stund att uppgradera.

#Copy & paste mellan Windows och terminalen

När du vill kopiera text mellan Windows och terminalen kan du markera texten och trycka ctrl-c, för att pasta texten kan du trycka ctrl-v.

#Installera nödvändiga paket

Vi skall installera ett par paket som gör din vardag enklare. Det är paket som används i kurserna och vi vill försäkra oss om att de är installerade.

sudo apt install wget curl ssh rsync git unzip

Här är en kort förklaring till de olika kommandona.

Kommando Förklaring
wget Ladda ned resurser från nätet/webben.
curl Alternativ till wget.
ssh SSH klient och server, används för att koppla upp mot externa servrar.
rsync Kopiera/synka innehåll i kataloger, lokalt och mellan servrar.
git Klient till versionshanteringssystemet git.
unzip Zippar upp filer som är paketerade.

#Manualsidor och man man

Manualsidor är källan till kunskap i en Linux terminal.

man curl

Om programmet man inte finns installerat så installerar du det.

sudo apt install man

Man kan söka efter de programpaket som går att installera.

sudo apt-cache search curl

Vänd dig till manualsidan för att veta hur du använder ett kommando.

Du kan också använda optionen --help alternativt -h, många kommandon stödjer den switchen för att visa hur man använder kommandot.

curl --help

#Installera cowsay

För att testa pakethanteraren kan du installera paketet cowsay som är ett litet skoj-paket.

sudo apt install cowsay

Nu kan vi köra programmet.

cowsay "Hej alla programmerare!"
Kul med terminalprogram i bash med Ubuntu och WSL.

Kul med terminalprogram i bash med Ubuntu och WSL.

Vill du vet mer om programmet så öppnar du dess manualsida.

#Öppna filväljaren och texteditorn

När du är i terminalen kan du öppna vissa Windows-applikationer som till exempel filväljaren och texteditorn. Det kan vara ett bra hjälpmedel att öppna dem i den katalogen där man står för tillfället.

#Öppna Explorer från terminalen

Prova att öppna filväljaren i den katalog du står i terminalen, punkten refererar till den katalog du för tillfället står i.

explorer.exe .

Du kan även prova att flytta till din hemmakatalog och skriva ut nuvarande sökväg till katalogen där du befinner dig.

Flytta till din hemmakatalog i WSL.

cd

Visa sökvägen till den katalog där du nu befinner dig i.

pwd

Det kan se ut så här.

Öppna explorer för att se filträdet inuti WSL.

Öppna explorer för att se filträdet inuti WSL.

Nu öppnas filväljaren och visar filerna i katalogen samt en sökväg till dem.

Nu kan du gå igenom filerna och filträdet som finns i WSL.

Nu kan du gå igenom filerna och filträdet som finns i WSL.

Om du inte ser filändelser eller dolda filer och kataloger i din Explorer så kan du behöva konfigurera det via “Options -> View” och klicka i enligt följande.

  • Klicka i
    • “Display the full path in the title bar”
    • “Show hidden files, folders and drives”
  • Klicka bort
    • “Hide extensions for known filetypes”

Via explorer kan du enkelt kopiera filer och kataloger mellan filstrukturen i Windows och filstrukturen i WSL.

#Öppna VSCode från terminalen

Se till att du har installerat Visual Studio Code och att du kan öppna den som en Windowsapplikation. Om du installerar vscode så behöver du även starta om terminalen så att den kan hitta kommandot.

Nu kan du starta vscode inuti WSL så här. Första gången du gör det kommer den installera det som behövs och det tar lite längre tid.

code .

Det kan se ut så här.

Nu kan du titta och redigera filerna som finns i WSL via vscode.

Nu kan du titta och redigera filerna som finns i WSL via vscode.

Nu kan du redigera filer som ligger inuti din WSL instans.

#Var finns Windows hemma-katalog?

Du kör Linux i ett eget system där du har speciella Linux-användare och ett filsystem för Linux. Din installation fungerar som ett eget system, ett subsystem inuti Windows. Därav namnet “Windows Subsystem for Linux (WSL)”.

Du kan komma åt ditt vanliga Windows filsystem, din “vanliga” C:, och på det sättet dela filer mellan Linux och Windows. Du hittar dina Windows-filsystem under katalogen /mnt.

Du kan använda kommandot ls för att lista de kataloger som ligger under katalogen /mnt. I mitt fall ligger där katalogen c som innehåller alla filerna på min C:.

cd /mnt
pwd
ls -l

Kommandot pwd visar dig den katalogen du står i för tillfället.

Tänk på katalogstrukturen som ett träd. Katalogen . är nuvarande katalog och katalogen .. är katalogen ovanför. Vill du gå ett steg upp i katalogstrukturen så skriver du alltså cd ...

# Gå ett steg ned i katalogstrukturen, i en underkatalog
cd c
pwd
ls -l

# Gå ett steg upp i katalogstrukturen
cd ..
pwd
ls -l

Sökvägen till min hemmakatalog i Windows blir då /mnt/c/Users/mos/ om min Windowsanvändare heter “mos” och om jag har en engelsk installation av Windows.

#Skapa länk till Windows hemmakatalog

För att göra det enkelt att nå filerna i din Windows hemma-katalog så kan du skapa en symbolisk länk i din hemmakatalog.

Börja med att gå tillbaka till din hemmakatalog i terminalen.

cd

Nu kan du skapa en symbolisk länk till din Windows hemmakatalog med kommandot ln -s.

ln -s /mnt/c/Users/mos/ winhome
ls -l

Nu kan jag enkelt nå mina filer som ligger hos min Windows-användare samt eventuellt kopiera över en backup till min Windows-katalog.

# Flytta till min windows home, när jag står i min Linux hemmakatalog
cd winhome
pwd
ls

# Flytta till min hemmakatalog i Linux
cd
pwd
ls

Om det inte fungerar kan du radera den symboliska länken och börja om.

cd
rm winhome

När du jobbar med kurserna rekommenderas det att du sparar alla filerna i WSL miljön. Det gör det enklast att nå dem via både WSL och texteditorn. Men se till att du har backup på filerna och att du kopierar dem till ett säkert ställa, om något går fel.

#Avslutningsvis

Det finns mycket att lära om WSL, Bash och Ubuntu. Lek runt med din terminal för att lära dig hur det fungerar.

#Revision history

  • 2024-08-23: (I, mos) Genomgången och uppdaterad inför ht24.
  • 2024-08-06: (H, aar) la till stycke om vanliga fel och att man ska kolla att användarnamn inte är root.
  • 2022-08-17: (G, mos) Om wsl redan är installerat, lade till video.
  • 2022-08-16: (F, mos) Uppdaterad till senaste installationsrutinen för WSL.
  • 2020-04-29: (E, mos) Lade till unzip som kommando att installera (krävs av composer).
  • 2019-08-22: (D, aurora) Översedd inför HT19 och Windows 10 v1903.
  • 2019-01-16: (C, mos) Förtydligande om var filer bör sparas och hur atom startas, bort med stycket om atom.
  • 2019-01-13: (B, mos) Lade till installation av nödvändiga paket.
  • 2019-01-08: (A, mos) Uppdaterad installationsprocess för 1803.

Document source.

Category: labbmiljo, windows, bash.