När Microsoft lanserade ”Bash för Windows” förra året höjde många på ögonbrynen. Det var oväntat rent tekniskt, men framför allt strategiskt, att Microsoft skulle närma sig Linuxvärlden i så hög utsträckning.

Nu när chocken har lagt sig kan man konstatera att Bash för Windows, eller The Windows Subsystem for Linux (WSL) som det egentligen heter, innebär att det går att köra många Linuxprogram (binärfiler) på Windows.

– Det här är en samling verktyg för utvecklare, systemadministratörer och annan teknisk personal som vill köra Linux kommandoradsverktyg samtidigt som de kör Windowsprogram, förklarar Rich Turner som är ansvarig för WSL på Microsoft.


Läs också: Så här får du nytta av Bash på Windows
 

Han säger vidare att det inte handlar om att förvandla Linux till Windows, eller att förvandla Windows till Linux, utan om att vissa Linuxverktyg är väldigt användbara och populära.

– Med Creators Update-versionen av Windows är WSL tillräckligt stabilt för vardagsanvändning, säger Rich Turner.

Med det i bagaget finns det fler insikter som är intressanta med WSL. Här bjuder IDG News på 14 sådana:

1. WSL är en Linuxdistribution, inte en Linuxkärna

WSL innebär att en Linuxdistribution installeras på din pc, för närvarande Ubuntu 16.04. Linuxprogrammens systemanrop går till Windowskärnan, i stället för Linuxkärnan.

2. WSL är inte en virtuell maskin

Om man kör Linux i en virtuell maskin på Windows får man ett separat operativsystem som går förbi stora delar av Windows när det körs. WSL behöver mycket mindre processorkraft och minne än en virtuell maskin och eftersom den körs i Windows kan Windows- och Linuxverktyg jobba samtidigt på samma filer.

En konsekvens av det här är att WSL kan köras i en virtuell maskin som kör Windows, utan att man behöver oroa sig för nästlad virtualisering.

3. WSL är inte Cygwin

Cygwin är ett bibliotek som ger en Unixliknande grafisk miljö i Windows, inklusive kommandorad. Man måste kompilera program specifikt för Cygwin, med WSL kan man köra oförändrade Linuxprogram i Windows.

4. Det behövs inget administratörskonto

Det behövs inget administratörskonto på en pc för att aktivera och använda WSL.

5. WSL innehåller mer än Bash

Bash är vägen in till WSL. Det är den första processen som körs och om man avslutar Bash så avslutas alla andra Linuxprocesser som körs. Men det går att använda andra skal, som zsh och fish, Linuxverktyg som apt, sed, grep, awk, top, tmux och ssh, samt utvecklingsverktyg som Vim, Emacs, git och Gnus Debugger (GDB). Vidare applikationer som sshd, Apache, nginx, MySQL och PostgreSQL, samt npm för Node.js, gems för Ruby, Apache Maven för Java, Pip för Python eller vad som helst som finns på Ubuntu.

6. Inte bara kommandoraden

WSL är skapat för att köra kommandoradsverktyg och startas med Bashskalet. Men många grafiska verktyg fungerar. Microsoft har inte gjort något speciellt för att ge stöd åt grafiska verktyg, men inte heller något för att lägga hinder i vägen för dem.

7. Linuxstödet innebär en generell förbättring av konsolen

För att Windowskonsolen ska kunna hantera textformatering för kommandoradsverktyg som Vim, Emacs och tmux, har Creators Update-versionen av Windows 10 fått bättre stöd för ANSI-teckenkoder och andra koder som används i Linux och Unix. Det finns stöd för 24-bitars färg, i stället för den gamla hanteringen av 16 färger, samt bättre musstöd. Alla de förbättringarna är tillgängliga även i Windows egna kommandoradsverktyg, som CMD och konsolen i Powershell.

8. WSL fungerar inte på Windows Server

WSL följer bara med Windows 10, inte Windows Server.

9. Bash ersätter inte Powershell

En anledning till att WSL inte finns på Windows Server är att det inte är avsett att användas för att administrera till exempel Windows Server, Active Directory, IIS, Exchange, Sharepoint, System Center, SQL Server, Hyper-V eller Azure, på samma sätt som Powershell. Powershell är inte bara ett kommandoradsskal, utan även ett ramverk för automatisering av arbetsuppgifter och för konfiguration. WSL ändrar inte på det.

Läs också: Låtsas att din dator är en Raspberry Pi med nya operativsystemet Pixel

10. Du måste hålla reda på uppdateringar

WSL uppdateras via Windows Update och de större uppdateringarna av Windows. Men av allt att döma gäller inte det för själva Linuxdistributionen eller för vissa Linuxbinärfiler, så du behöver köra apt-get för att uppdatera dem själv. Men Microsoft planerar att automatisera det så småningom.

11. Kan administreras med Windowsverktyg

I de flesta fall kan WSL administreras med vanliga Windowsverktyg, till exempel för nätverksadministration. Det är ofta inte möjligt om Linux körs i en virtuell maskin. Att det fungerar med WSL beror bland annat på att det använder Windowskärnans hantering av minne, processer, nätverk, lagring, samt in- och utmatning.

Så här långt är Windows Defender det enda antivirusprogrammet som fungerar med WSL och kan övervaka Linuxprocesser. Men andra leverantörer jobbar med att anpassa sina produkter.

12. Linuxprocessor hanteras i Windows

De Linuxprocesser som körs med WSL hanteras på samma sätt som andra processer i Windows, så de syns i Aktivitetshanteraren (Task Manager) och går att avsluta där. Det innebär också att du kan starta Windowsprogram i Bash och använda utmatning från Windowsprogram som inmatning till Linuxprogram. Andra saker man kan göra är att köra kommandofiler från Bash, skicka utmatning från Bash till Powershell och starta verktyg som Visual Studio.

13. Inga Linuxfiler i Windowsprogram

Även om Linuxprogram som körs i WSL kan öppna Windowsfiler, så kan inte Windowsprogram öppna filer från Linux filsystem. Filer kan till och med skadas om man försöker.

14. Läge att bli en Windows Insider
Det släpps förbättringar av WSL kontinuerligt, som att det går att utnyttja Windows serieportar i Linuxprocesser. Den och andra nyheter ingick inte i Creators Update, men du kan få tillgång till dem genom att installera nya versioner som ingår i programmet Windows Insider.