reklama

Nový Windows 10 Insider Preview: Integrované Ubuntu v akci a další novinky

  • A je to tady, Linux na Windows už můžeme testovat
  • Drobnou oklikou lze spouštět i grafické programy
  • Nový build ale přináší i další novinky
Kapitoly článku

Týden po sanfranciském Buildu Microsoft do světa vypustil nové sestavení Windows 10 Insider Preview 14316, jehož hlavní specialitou je onen hojně citovaný bash – anebo plným jménem Bash on Ubuntu on Windows.

Ačkoliv jsme mu věnovali samostatný článek, tentokrát si už konečně může každý vyzkoušet, co skutečně umí, takže si jej ještě připomeneme. A podíváme se samozřejmě i na další novinky tohoto sestavení, protože integrovaným Ubuntu ve Windows to zdaleka nekončí.

Ubuntu nativně na Windows

Abyste se dostali k bashi, samotný upgrade na nový build z rychlého aktualizačního kanálu nestačí. Nejprve budete muset povolit v moderní aplikaci Nastavení Vývojářský režim a to v sekci Aktualizace a zabezpečení – Pro vývojáře.

Klepněte pro větší obrázek Klepněte pro větší obrázek
Aktivace Windows Subsystem for Linux

Poté musíte spustit dialog Funkce systému Windows (dohledáte jej z nabídky Start) a na konci seznamu najdete novou položku Windows Subsystem for Linux (Beta). Nakonec otevřete příkazovou řádku cmd, napište bash a dokončí se celá instalace. Samotný bash poté můžete spouštět buď opět z cmd, anebo v samostatném okně, v nabídce Start totiž najdete zástupce s ikonou Ubuntu.

Klepněte pro větší obrázek Klepněte pro větší obrázek
Jakmile aktivujete Windows Subsystem for Linux, můžete příkazem bash v příkazové řádce stáhnout obraz Ubuntu z Windows Store a konečně se přepnout do linuxové příkazové řádky

Bash pro Windows se v mnoha ohledech liší od klasického Linuxu. Vůbec se tu třeba nehraje na uživatele a práva – na svém vlastním linuxovém pískovišti jste prostě root, a jelikož jsou všechny soubory Ubuntu uložené v uživatelském adresáři c:\users\<uživatel>\appdata\local\lxss\rootfs, i samotné Ubuntu nebude mít vyšší práva než uživatel, kterému patří.

Klepněte pro větší obrázek Klepněte pro větší obrázek
Souborový systém Ubuntu skrytý v uživatelské složce Windows a konečně bash v akci

Ačkoliv se nejedná o klasickou virtualizaci, ale linuxové programy se spouštějí přímo s pomocí překladače systémových volání integrovaného hluboko do jádra Windows, oba dva světy jsou přeci jen už z principu izolované. Každý linuxový systém má svůj kořenový adresář /, zatímco Windows systémový diskový oddíl C:. Z bashe se k němu ale snadno dostanete, je totiž k dispozici na cestě /mnt/c. Stejně tak je k dispozici sdílená systémová schránka.

Klepněte pro větší obrázek
Linux version 3.4.0-Microsoft...  Aneb vzpomínáte si na ta dávná slova, kdy Ballmer prohlašoval, že je Linux rakovina? Rakovina ve Windows a podepsaná Microsoftem. Toto není zmrzlé peklo, to je absolutní nula v pekle! 

Tím ale vzájemné propojení končí. Linux je Linux a Windows je Windows, když tedy budete chtít z bashe spustit EXE program – třeba /mnt/c/windows/write.exe, tak máte smůlu, protože to prostě optikou Linuxu není podporovaný spustitelný program.

Klepněte pro větší obrázek
Přihlašujete se z Windows k linuxovým serverům pomocí Putty? Nyní si už vystačíte s bashem. Vždyť je tu nativní ssh.

Stejně tak z klasické příkazové řádky Windows nemůžete spustit přímo některý z linuxových programů. Z toho plyne, že zatím nelze ani kombinovat vstupy a výstupy těchto dvou heterogenních světů, kdy výstup z linuxového textového programu rourou pošlete třeba do notepad.exe. Programátoři už sice volají, aby k jakémusi propojení došlo, otázkou ovšem je, jestli je to dost dobře možné – Microsoft by musel nejprve vytvořit bránu, která by tato mezisystémová volání a výměnu dat spravovala.

Grafický Linux

Ubuntu ve Windows je zatím výhradně textové. Součástí není žádný X server (grafický subsystém), který by dokázal zobrazit grafickou aplikaci v okně. Není se čemu divit, to totiž ani není účel linuxového bashe na Windows. Má pomáhat vývojářům, má umožnit spouštění linuxových skriptů a nástrojů, ale pokud chcete spouštět grafické aplikace, jsou tu jiné a dnes i spolehlivější cesty – především tradiční virtualizace.

Nicméně, alespoň teoreticky, nešlo by to přeci jen nějakou oklikou? Šlo! Stačí mít po ruce některý X server portovaný pro Windows – třeba jednoduchý vcXsrv. Pak už stačí v bashi pomocí nástroje apt-get z repozitáře Ubuntu nainstalovat kýženou grafickou aplikaci (pro testovací účely třeba balík primitivních x11-apps).

Klepněte pro větší obrázek
Jednoduchá grafická linuxová aplikace xclock z balíku x11-apps spuštěná v bashi a zobrazená na Windows pomocí X serveru vcXsrv

Jednou z nich jsou třeba grafické hodiny xclock nebo kalkulačka xcalc. Když je ale budete chtít spustit, bash nahlásí chybu, protože přeci neumí zobrazit grafický program – chybí mu displej. Pokud jste ale nainstalovali a spustili vcXsrv, stačí napsat příkaz:

export DISPLAY=:0

Bash poté grafický výstup programu pošle na tento jednoduchý X server, který jej na Windows zobrazí v samostatném a systémovém okně.

Klepněte pro větší obrázek
A co se pokusit na Windows nativně spustit rovnou gnome-control-center, respektive jinou aplikaci z grafického prostředí GNOME? Tak určitě!

Ubuntu on Windows nemá nahrazovat kompletní Linux. Je to shell pro vývojáře

Windows Subsystem for Linux je zatím ve fází betaverze, takže ne vše bude fungovat (top třeba bash prakticky zabije), nicméně pohlížejte na něj opravdu spíše jako na doklad toho, že to je vůbec možné, vývoj celé integrace Linuxu do Windows je totiž velmi raný a živý.

Klepněte pro větší obrázek
Přesně k tomuto má Ubuntu na Windows sloužit: Stáhl jsem přes wget zdrojový kód linuxového programu v C, přeložil jej pomocí gcc a rovnou spustil. Zabralo to pár okamžiků (včetně instalace libssl-dev) a já nemusel na Windows zdlouhavě virtualizovat některou z linuxových distribucí.

Podstatné je to, že instalace textových programů pomocí apt-get funguje na jedničku, takže vývojáři mohou instalovat různé programovací nástroje, interprety a mohou překládat linuxové programy v C/C++ třeba z GitHubu, protože nechybí ani překladač gcc (resp. jej lze doinstalovat). Mohou si hrát s nejrůznějšími knihovnami pro python, které mají závislosti, které na Windows prostě chybí, a tak dále. Tady zatím betaverze Ubuntu pro Windows funguje až obdivuhodně dobře.


Windows Subsystem for Linux ale opravdu není jedinou novinkou tohoto buildu. Ty další najdete v následující kapitole.

Témata článku: Software, Windows, Operační systémy, Linux, Programování, Windows 10, Open source, Ubuntu, Continuum, Cortana, Tips, Launchpad

84 komentářů

Nejnovější komentáře

  • LAMER_CZ 16. 8. 2016 14:09:42
    No tak obskurnost jako BASH by byla posledni duvod tohle instalovat .........
  • Vlastimil Bukovec 11. 4. 2016 10:12:05
    "..a konečně bash v akci.." Co je to za bash v akci, když tam nikde...
  • Richard Starý 10. 4. 2016 22:52:08
    to si musí nainstalovat jenom magor, instalovat na linuxu třeba jen tv...
reklama
Určitě si přečtěte

UPC překopli páteřní kabel. V Brně i druhý den nejede internet ani kabelovka

UPC překopli páteřní kabel. V Brně i druhý den nejede internet ani kabelovka

** V Brně byl velký výpadek služeb UPC ** Důvodem je překopnutý páteřní kabel ** V některých lokalitách služby stále nefungují

5.  12.  2016 | Jakub Čížek | 100

ASUS ZenBook 3 se začal prodávat v Česku. Je ve všem lepší než MacBook, ale bude to stačit?

ASUS ZenBook 3 se začal prodávat v Česku. Je ve všem lepší než MacBook, ale bude to stačit?

** Novinka od Asusu míří přímo proti MacBooku od Applu ** Nabídne daleko více výkonu za stejné peníze

2.  12.  2016 | David Polesný | 144

17 expertek Microsoftu předpovědělo rok 2027. Splní se alespoň něco?

17 expertek Microsoftu předpovědělo rok 2027. Splní se alespoň něco?

** Zmizí klasické vyhledávače ** Budeme programovat buňky ** Kvantové počítače překonají šifry

Včera | Jakub Čížek | 34


reklama