Forrás:

The Verge

Pár napja már híresztelgették, hogy a Canonical (az Ubuntu fejlesztője) és a Microsoft valami igen komoly összefogásba kezdett, hogy a Linux parancssornak is csúfolt bash és csatolt részei fussanak majd Windows 10-en.

Nos, amint a tegnapi Build 2016-on kiderült, a hír igaz, ráadásul nem is akárhogyan. A Windowsba épített Linux ugyanis nem holmi „cross compiled” (keresztfordított, és ez most el nem magyarázom, mert hosszú és érdektelen), vagy VM (virtual machine, vagyis virtuális gép) megoldással kerül bele, hanem natívan, vagyis a szükséges cuccok a Windows kernelében lesznek, és ahhoz adódik hozzá a bash shellt tartalmazó Ubuntu image, aminek a tartalma így természetesen natívan fut.

Ahogy a videóban el is magyarázzák, a fejlesztők egy rugalmas, stabil, ugyanakkor hosszú távú megoldást kerestek a felhasználók azon kéréseire, amelyek átszabott Windows parancssort, Linux és Unix eszközök (bash, ssh, grep, awk és társai) integrálását, illetve a nyílt forráskódú projecteket jobban támogató platformot kértek a Mikulás bácsitól Microsoft fejlesztő csapatától. Mint mondják, a lehetőségek hosszas szemrevétele után teljesen bekattantak, és végül fogták magukat, beintegráltak egy teljes user módú Linuxot eszközöstül a Windows 10-be. Szóval amint láthatjuk, egy bash (abban meg még jó pár dolog) fut Ubuntun ami Windowson fut.

Akit bővebben érdekel a dolog jó pár nyalánksággal, valamint ért angolul, az nézze végig a videót, hogy jóval több részletet tudjon meg. Az igazi trúság olyan 4 perctől kezdődik, addig csak a felvezető önfény megy. Nézzünk innen pár izgalmas apróságot!

  • Mivel tényleg natív integrációról van szó, a binárisok (a futtatható fájlok, vagyis a progamok) tényleg linuxosak.
  • Az integrált rendszerbe felmountolható (csatolható) a Windows fájlrendszere.
  • Természetesen készíthetők a rendszeren linuxos futtaható fájlok a megszokott linuxos eszközökkel és a végeredmény természetesen linuxos bináris – ha eddig nem hangsúlyoztuk volna.
  • Működik a csomagkezelő rendszer is (Ubunturól lévén szó ez a dpkg apt front-enddel), a videóban egy git-et szednek le és működik.
  • Amivel lehúznak a lnux fájlrendszerhez csatol windowsos fájlrendszeren levő Ruby alkalmazást, amit aztán megnyitnak módosítás céljából a klasszikus windowsos felületen Visual Studióval. Aki nem érti, miről is van szó, az innen kezdve már nyugodtan menekülőre foghatja.
  • Ugyanis utána bash-sel elindítja emberünk a helyi WEBrick HTTP (köznapi nyelven web-) szervert, majd ismét csak a klasszikus Windows felületen Edge segítségével megnézünk.
  • És mivel nem virtuális gépen fut, hanem a saját gépünkön (ugyanazon a kernelen és ugyanazon a network stacken), ezért nem kell ismernünk annak az IP címét, vagyis (mint az köztudomású) a localhost elnevezésű helyen találjuk, a potrot meg előzékenyen kiírta a WEBrick amikor futtattuk az Ubuntun ami a Windowson fut, amin aztán megtekintjük.
  • Majd a megváltoztatott kódot szépen feltolják az éles szerverre. Természetesen bash alatt, git, ssh és Apache Mina segítségével.
  • És van fork is.
  • Mivel a rendszer még fejlesztés alatt áll, a videóban is csak egy preview verzióval demóznak, pár dolog nem működik, példának a kedvelt top parancsot illetve a MySQL-t említik, és általában a háttérben futó dolgok nem feltétlenül az igaziak.
  • Hamarosan érkezik a Windows 10 Insider verziójába, és mindenkit kérnek, hogy teszteljék.

Amint a fenti illusztráció is mutatja, ez az egész hóbelevanc azért nem annyira a mezei felhasználóknak, mint a fejlesztőknek szól, akiknek viszont elvben jelentékenyen megkönnyítheti a dolgát, hogy egy és ugyanazon pécén, és azon belül is operációs rendszer váltása, vagy virtuális gép használata nélkül, tehát macerákat elkerülve és gyorsan, időveszteségek nélkül, mindkét rendszer előnyeit kihasználva fejleszthetnek.

A végső csattanó az egészben az, hogy már a nyáron érkező, korábban Redstone Wave 1, ám tegnaptól Windows 10 Anniversary Update névre hallgató nagy frissítőcsomaggal érkezik a kedves felhasználókhoz és (sokkal inkább a) fejlesztőkhöz.

  • IamTwo

    Én aktívan, napi szinten használok linuxot és windows-t is, még némi fejlesztési munkát is végzek, de még egy kicsit rágódnom kell azon, hogy ez a hibrid rendszer miért is lesz annyira jó :/
    Mondjuk a natív bash-t a keblemre ölelném, az biztos 🙂

    • hihi hihetetlen

      cygwin nem jó? 😉

      • IamTwo

        Az ékezetes fájlnevekkel egy időben nagyon sokat ‘optam. Aztán valami japán fejlesztő csinált valami utf-8-as tudásra patchelt cygwin változatot, azt használtam sokáig. De azért így nem kerek.
        Időközben egészen jól működik már ez a windowsos linux, ráadásul már el tudja indítani a windows programokat is, úgyhogy a cygwin nálam végleg archívumba került.

  • Szatmári Zoltán

    Ha ezt a módszert átültetnék a mobil platformra, lehet, hogy ez Androidos alkalmazások futtatását is lehetővé tenné Winphone alatt? – csak hangosan gondolkodom, lehet, hogy hülyeség, amit írok.

    • Czigler Ferenc

      Attül még az egyéb android apik hiányoznának.

  • IamTwo

    Nos, már meg is érkezett!
    Nálam nem megy a névfeloldás és a magyar billentyűzetkiosztás is gondot okoz, itt-ott dob core-is, de végül is majdnem működik 🙂

  • Czigler Ferenc

    Egy natív bash tényleg jó lenne. 🙂