Ubuntu Bash on Windows 10 = ♥ at first sight!

Dok smo se mi zanimali virtualiziranjem nekolicine Linux OS-ova na Desetki (vidi članak Hyper-V i Linux ) Microsoft i Canonical su u svojoj kuhinji IT tehnologija pripremili novi specijalitet, u medijima predstavljen kao Ubuntu Bash on Windows 10. Zanimljivo je da u Desetki build 14332, prvoj inačici Windows OS-a sa integriranom podrškom za Ubuntu Bash, Microsoft koristi općenitije ime: Windows subsystem for Linux. Ne spominje se Ubuntu iako se nakon aktiviranja tog modula instalira upravo Ubuntu 14.04 Bash. Slutimo da ćemo, ako Microsoftu upali ovaj manevar, u jednom trenutku dobiti izbor koju / čiju implementaciju Bash ljuske želimo instalirati...



Kako je naglašeno u istupima raznih glasnogovornika, a vidljivo je i na gornjoj slici, riječ je o poluproizvodu, beti. Srećom, dovoljno je funkcionalna da zaintrigira širu IT javnost, a Redmondovcima posluži kao još jedna potvrda istinitosti sladunjave maksime “Microsoft ♥ Linux”, koju su svojevremeno lansirali. Naslovom ovog članka i mi dajemo svoj doprinos! :o)


Ono što valja priznati Microsoftovom aktualnom vodstvu jest da zna svoj posao. Kaže se da sposobni poduzetnici skorištavaju poslovne prilike, a prosvijećeni poduzetnici stvaraju poslovne prilike kako bi ih potom iskoristili! Upravo tako rade Microsoftovi visoko pozicionirani rukovodioci. Pa kad se takva poslovna filozofija preslika na IT tehnologije, evidentan rast popularnosti open-source paradigme – od Linuxa/Androida preko razvojnih alata do aplikacija – neminovno dovodi do promoviranja strategije zbližavanja, otvaranja. Jer prilagodbom i kooperacijom, a ne sučeljavanjem i distanciranjem, stvaraju se nove poslovne prilike uz minimalne troškove. Uostalom, Microsoftov aktualni partner Canonical odabrao je istu strategiju još u samim počecima Ubuntua – godinama je to bila jedina desktop/server Linux distribucija defaultno opremljena medijatorskim softverom za što bezbolnije povezivanje sa Windowsima, u to vrijeme dominantnim OS-om u svim IT pogonima baziranim na Intel/AMD arhitekturi. Utoliko partnerstvo Microsofta i Canonicala u ovom projektu može zateći samo neinformirane.

U kontekstu Basha na Desetki: Microsoft je softverska kompanija i nema nikakvih dilema glede značaja developera i programera, njih on nastoji pridobiti. Ideja je ponuditi aplikativcima raznih profila kompletnu razvojnu okolinu na Windows OS-u, okolinu dovoljno linuxoidnu za nesmetanu uporabu Ruby, Git, Python i sličnih alata neophodnih za pisanje i testiranje ne-Windows aplikacija. Utoliko, Bash na Windows 10 samo je „naredni logični korak“ nakon formiranja Visual Studia kao cross-platform multifunkcionalnog razvojnog alata (Community edicija je besplatna za fizičke osobe), i darežljive politike upgradea starijih Windows verzija na Windows 10.

Mi sistemci nećemo naći mnogo toga korisnog u aktualnoj inačici Basha na windozama. Sistemske funkcionalnosti su ili oskudne ili čak odsutne, uključujući nešto tako elementarno kao što su ifconfig bez parametara, ping, df, lsmod... ukratko, kud god kreneš naletiš na ograničenja, naposljetku si sretan što ti radi apt* suita i ssh klijent! Nema niti sistemskih logova pa je teško išta dijagnosticirati.



Svakako, zanimljivo je istraživati aktualno rješenje, tu „prvu lastu“ nastupajućih tehnologija, što posredstvom Interneta što osobnim uvidom. Saznamo da se zaista rabi Windows kernel, naime, Linux kernela jednostavno nema. Preciznije, emuliraju ga dvije sistemske datoteke, lxcore.sys i lxss.sys, tijekom instalacije Basha ukopirane u %systemroot/system32 Desetke. One prevode poruke komandnolinijskih Linux aplikacija upućene Linux kernelu u format razumljiv Windows kernelu, koji potom odradi svoj dio posla. Iz Basha vidimo sve lokalne NTFS particije koje vidi i Windows domaćin, montirane su u /mnt. Niža slika pokazuje kako smo na D disku isprobavali razinu suradnje Bash konzole sa Windows CMD i Windows Explorerom.



Na datotečnom sustavu diska D aplikacije surađuju, ali na disku C – tu su u mojoj instalaciji i OS i Bash – pojavljuju se kolizije. Iz Windowsa je datotečni sustav pod kontrolom Basha pristupačan putanjom: Users > logon-ime > AppData > Local > lxss > rootfs. Usput, pogledajte kako sam se proveo pokušavajući saznati tip datotečnog sustava. Na Ubuntu 14.4 sve naredbe prisutne na narednoj slici rade i informativnije su. Toliko o tvrdnjama poput This is an genuine Ubuntu image on top of Windows....



Trenutno Linux i Windows aplikacije mogu komunicirati isključivo posredstvom mreže ili datotečnog sustava, nemoguća je direktna razmjena podataka (IPC) između Linux i Windows procesa. Dosljedno rečenome, ne možemo iz, recimo, PowerShella pozivati Bash naredbe ili skripte, niti obratno.

Na Internetu su se počeli pojavljivati članci sa opisom arhitekturalnih komponenata rješenja, autori manje-više prepričavaju članak objavljen na https://blogs.msdn.microsoft.com/wsl/2016/04/22/windows-subsystem-for-linux-overview/. Naići ćemo čak i na performansne testove, poput ovog na adresi http://www.techrepublic.com/article/windows-10-how-well-does-it-run-ubuntu-bash/, što nam, među ostalim, pokazuje koliko je tema atraktivna kad se ljudi dragovoljno troše na besmislice poput mjerenja brzine odziva beta verzije softvera, heh.

No, realno, znatiželjnijima su tekstovi objavljeni na Internetu koristan izvor informacija, jer je Bash za Desetku dostupan samo kroz Windows Insider program. Članstvo u tom programu je besplatno ali problem je potreba posjedovanja licenciranog fizičkog ili virtualnog Windows 10 x64 računala koje u praksi mora biti dedicirano za taj program. Zašto? Zato što na to računalo sjeda „tek naštrikan“ softver pa su neizbježna „štekanja“ računala, uključujući i rušenja. Zainteresirani neka skoknu na https://insider.windows.com/, tu će brzo procijeniti isplati im se učlaniti u taj program ili pričekati nepuna tri mjeseca, kad će Windows 10 Anniversary Update (po starome: Service Pack) ugnijezditi Windows subsystem for Linux u Desetku kao jednu od standardnih značajki.

Već je najavljeno da će se „very, very soon“ sa Ubuntu Basha 14.4 prijeći na verziju 16.4 pa, ako vam je to dostatan motiv za pristupanje Windows Insider programu, slijedi jedan važan hint: Regional Settings i Language Desetke postavite na English (United States), sve dok to ne odradite Microsoft vam neće spustiti build 14332 ili viši. Location može ostati Croatia. Na Internetu ćete naći da se u Windows Insider programu može rabiti Windows 10 Evaluation, ali to je dezinformacija, program prihvaća samo licenciranu Desetku.




Kategorije: 
Vote: 
0
No votes yet