Nainštalujte subsystém Windows pre Linux

Install Windows Subsystem



Windows Subsystem for Linux je nástroj vyvinutý spoločnosťou Microsoft, ktorý umožňuje vývojárom a nadšencom Linuxu prevádzkovať svoje obľúbené prostredie Linuxu natívne v systéme Windows 10 bez režijných nákladov na spustenie virtuálneho počítača. Spôsob, akým to funguje, je podobný tomu VÍNO funguje na Linuxe. WSL umožňuje spustenie binárnych súborov Linux v systéme Windows pomocou vrstvy kompatibility, ktorá prekladá systémové hovory systému Linux do systémových hovorov systému Windows.

Architektúra

Pravdepodobne WSL funguje lepšie v systéme Windows než WINE v systéme Linux a dôvodom je to, že Linux je špecifický svojou architektúrou. Aj keď väčšina operačných systémov pozostáva z jadra a celej sady knižníc a funkcií postavených na jadre, Linux je iba jadro. Väčšina distribúcií GNU/Linux berie toto jadro a stavia na ňom balík operačného systému. V závislosti od toho, ako ste sa rozhodli zostaviť tento zásobník, získate rôzne distribúcie ako Debian, RedHat atď.







Na spustenie prostredia Linux v systéme Windows budete musieť povoliť funkciu WSL (čoskoro sa ňou budeme zaoberať) a potom v obchode Microsoft získať kópiu vašej obľúbenej distribúcie (Ubuntu, Debian, OpenSUSE atď.).



Prvý krok umožňuje vrstvu prekladu syscall a druhý krok prináša ľahký balík softvéru, ktorý vám poskytne kompletný operačný systém Linux spustiteľný na vrchole funkcie WSL. Robiť opak, to znamená, že spustenie aplikácií systému Windows v systéme Linux je oveľa ťažšie, pretože systém Windows je oveľa viac než len jadro NT.



Z tohto dôvodu nie je do implementácie WSL zapojený žiadny virtuálny stroj, čo z neho robí atraktívnu možnosť. Nebudete mať žiadnu stratu výkonu, pretože nie sú zahrnuté žiadne virtuálne počítače, iba natívna ľahká prekladová vrstva syscall.





Inštalácia a nastavenie

Na počítači so systémom Windows 10 vyhľadajte výraz Zapnúť alebo vypnúť funkcie systému Windows kliknutím na kláves Windows a jeho zadaním do ponuky Štart. Po otvorení ponuky Funkcie systému Windows prejdite nadol, kde nájdete funkciu Windows Subsystem for Linux. Začiarknite políčko a kliknite na tlačidlo OK.



Windows sa odteraz postará o nastavenie a akonáhle bude všetko hotové, bude potrebné, aby ste dokončili zmeny, reštartujte systém. Po reštarte môžete ísť do obchodu Microsoft Store a nájsť tam svoju obľúbenú distribúciu.

V obchode môžete vyhľadať svoju obľúbenú distribúciu. Nasleduje snímka obrazovky niektorých z najpoužívanejších distribúcií. Môžete vidieť dve varianty OpenSUSE, aplikáciu Debian a Kali Linux.

Najpopulárnejšou distribúciou je samozrejme stále Ubuntu, v obchode je k dispozícii 16.04 a 18.04 LTS.

Nainštalujte subsystém Windows pre Linux

Teraz stačí vybrať požadovanú distribúciu a nainštalovať príslušnú aplikáciu. Nainštalujeme Ubuntu 18.04 LTS do nášho prostredia WSL. Je zhruba 215 MB veľký, oveľa menší ako celá inštalácia Ubuntu.

Hneď po inštalácii aplikácie ju môžete spustiť priamo z aplikácie Microsoft Store alebo ju vyhľadať v ponuke Štart. Po prvom spustení bude určitý čas trvať, kým sa nastavia.

Môže to trvať až 5 minút, ale akonáhle to urobíte, budete vyzvaní, aby ste zadali svoje nové používateľské meno a heslo pre systém UNIX, a môžete ísť!

Spustený terminál vám okrem GUI ponúkne takmer všetky funkcie systému Ubuntu. Pretože väčšina funkcií UNIX/Linux pochádza z výkonu terminálu, môže vám to priniesť dlhú cestu.

Toto prostredie môžeme napríklad začať používať aktualizáciou všetkých balíkov, ktoré sú v ňom nainštalované.

$sudovýstižná aktualizácia&& sudovhodnú aktualizáciu-a

Veci, ktoré môžete a čo nemôžete robiť v prostredí WSL

Otázka, ktorá sa vynára v mysli každého z nás, znie - v čom je háčik?

Uvažujme o opačnom prípade. Vďaka technológiám, ako je WINE, vieme, že nie všetko, čo sa dá urobiť v systéme Windows, je možné vykonať aj v systéme Linux. Nízkoúrovňové systémové knižnice, ako napríklad DirectX, nebudú k dispozícii v systéme Linux a veľa aplikácií v systéme Windows na tieto knižnice závisí.

Operačné systémy ako Windows 10, FreeBSD alebo Illumos sú plnohodnotnými operačnými systémami, nielen jadrom. V systéme Windows je väčšina knižníc patentovaná, a preto je to ešte ťažšie. To robí prácu projektu ako VÍNO oveľa ťažším.

Pri pokuse napodobniť Linux v systéme Windows je opak pravdou. Úplná sada hovorov ABI (alebo syscalls) systému Linux je všetko, čo potrebujete na preklad do systému Windows, aby ste na ňom mohli spustiť všetko. Ak sa pokúsime opýtať Ubuntu na WSL, aké jadro používa, poskytne vám číslo verzie jadra Linuxu, pričom Microsoft bude vedľa čísla verzie uvádzať, že to nie je hlavná vetva projektu jadra Linux.

$uname -do

Ak sa ponoríme hlbšie, zistíme, že zatiaľ čo sú zobrazené funkcie na vysokej úrovni, ako je rozloženie súborového systému a sieťové konfigurácie, činnosti na nižšej úrovni, ako je rozloženie blokového úložiska, nebudú fungovať.

Nasledujúce príkazy budú napríklad fungovať podľa očakávania:

$df -h

$ifconfig

Oba príkazy vám poskytnú informácie o vašom pôvodnom systéme, v ktorom je skutočne spustený systém Windows. Nie je to nič podobné ako prevádzkovať VM, kde existujú úplne rôzne sieťové rozhrania a rôzne súborové systémy.

Príkazy ako lsblk nebude fungovať, pretože blokové úložisko nižšej úrovne nie je to, čo Linux očakáva. Podobne je inštalácia OpenZFS zbytočná, pretože OpenZFS inštaluje niekoľko načítateľných modulov jadra a my nemáme jadro Linuxu, iba ilúziu.

To isté platí, ak sa pokúšate spustiť docker. Pri inštalácii Dockera sa Ubuntu nebude sťažovať, služba Docker sa však nespustí, pretože závisí od Systemd, ktorý v tomto subsystéme chýba.

Môžete však prevádzkovať množstvo služieb a pomôcok, ktoré vám uľahčia život. Ak sa živíte správou serverov Linux, nemusíte mať Linux ani na pracovnej ploche. V tomto prostredí môžete spúšťať klientov SSH, klienta Docker, bash, nástroje ako grep a awk, ako aj svoj obľúbený programovací jazyk od Pythonu po Rust bez toho, aby ste znečisťovali systém Windows.

Svoju automatizáciu CD/CI môžete spustiť aj pomocou technológie Ansible, Puppet alebo akejkoľvek inej preferovanej technológie. To znamená, že čokoľvek, čo by DevOp, vývojár webu alebo aplikácií alebo tester od systému Linux vyžadovali, je možné dosiahnuť pomocou WSL, s výnimkou ľudí pracujúcich s vývojom systémového softvéru a/alebo jadra.

Záver

Máte vlastné nápady alebo skúsenosti s Windows Subsystem v Linuxe? Alebo máte stále otázky, na ktoré potrebujete odpovede. Kontaktujte nás so svojimi otázkami a my sa vám budeme venovať tejto téme.