Satya Nadellas Microsoft är på många sätt ett annat företag än Steve Ballmers. Företaget har snabbat upp sin förändringstakt och också öppnat för ökad heterogenitet. De första exemplen kom kring IOS och Android när Officepaketet dök upp där, och företaget följer nu upp detta med att lansera Ubuntu Bash i de senaste preview-versionerna av Windows 10. För att kunna installera Bash måste du aktivera Windows Insider-läget i Windows 10 och delta i Fast Ring- uppdateringarna. Vi gör detta och erbjuds Build 14328 som vi installerar.

alt
Linux Subsystem installeras enkelt via kontrollpanelen och som vi ser är det Ubuntu 14.04 som installeras.

Efter detta installerar vi Linux Subsystem via kontrollpanelen och kör sedan Bash. Samarbetet mellan Canonical och Microsoft måste ha pågått ett tag eftersom det är Ubuntu 14.04 (Trusty) som installeras, denna version släpptes redan den 17 april 2014.

Läs också: Ubuntu 16.04 är släppt – här är nyheterna som ska få företagen att välja Linux

Det är inte några virtuella maskiner eller containers inblandade, utan det är Ubuntu User-mode som körs ovanpå Windows egen kernel och alla syscalls översätts till Windowskompatibla sådana när de når kernel.

alt
Ubuntu körs enbart i user-mode och alla syscalls översätts till Windows motsvarigheter i Kernel mode.

Vi är förstås nyfikna på vad som fungerar och hur det hela ser ut. Vi startar några standardverktyg som till exempel VI och det fungerar bra. Vi noterar också att vi har tillgång till Windows filsystem via /mnt/c och vi kan utföra allehanda filoperationer i filsystemet, fast med Linuxverktyg.

Läs också: Video: Så här enkelt kommer du igång med Linux i Windows 10

Vi testar också att använda verktygen awk och grep, som är gamla och kraftfulla Linuxverktyg som man kan ha nytta av att använda även på sitt Windowsfilsystem. Det fungerar fint och är snabbt att jobba med. Vi noterar att vi alltid arbetar som SU och detta är ett val Microsoft gjort i denna tidiga version. I framtiden kommer man att kunna välja mer finmaskigt vilka behörighetsnivåer man arbetar med i subsystemet.

alt
Traditionella verktyg som awk fungerar fint att använda. Här gör vi en textsökning bland olika användare.

Vi får ingen tillgång till några grafiska verktyg via detta subsystem, vi lyckas inte kompilera några .c-filer som kräver grafik och vi kan heller inte starta någon desktop som KDE eller Gnome. Microsoft är tydliga med att deras lösning är till för kommandoradsarbete och inget annat. Vi får heller ingen korsbefruktning mellan till exempel Powershell och Bash, där de kan använda varandras kommandon utan Bash känns väldigt sandboxat och avgränsat.

alt
Vi har full tillgång till Windows filsystem via Bash. Idag enbart som SU, men man kommer att få bättre möjlighet att styra detta i framtiden.

Ett vanligt sätt att installera olika produkter i Ubuntu är att använda apt-get. Vi vill förstås testa att kompilera C-program för att verkligen se att det fungerar som det ska. För att kunna göra detta behöver vi ha gcc på plats. Vi installerar detta med apt-get install gcc och på någon minut har vi gcc på plats. Vi kompilerar ett enkelt program där man ska gissa siffror med gcc guess.c –o Guess och kör sedan detta. Det går fint och vi kollar också med ReadELF att det verkligen är ett Linuxprogram, vilket det också är.

alt
Vi roar oss med att installera GCC med apt-get och kompilerar ett enkelt program. Det fungerar bra att köra efteråt.

Lösningen är enligt Microsoft inte till (i alla fall inte ännu) för att börja köra tunga serverbaserade lösningar i Windows. Vill man göra detta så är man fortfarande hänvisad till att köra Linux i Azure eller i Hyper-V. Men det går också att köra Apache-webbservrar, SSH-server och MySQL via subsystemet om man vill för test och utveckling. Det är mest fantasin som sätter gränserna för vad man kan hitta på när vi nu har två OS i ett. Vi ska erkänna att det känns ganska ovant och konstigt att köra Ubuntu på Windows, men för många utvecklare kan det förenkla livet väsentligt. Vi ser detta som ett första steg och det kommer garanterat att utvecklas vidare i kommande versioner av Windows, men vi gläds åt att samverkan vinner över skyttegravskrigande och ser fram mot en enklare vardag för utvecklare framöver.