S vydáním Anniversary Update pro Windows 10 společnost Microsoft oznámila Subsystém Windows pro Linux (WSL) - způsob, jak spustit skutečný nativní Bash ve Windows 10, který podporuje spouštění nativních binárních souborů Linuxu. Dělá to spuštěním obrazu Ubuntu Linux v uživatelském režimu nad Windows.
To znamená, že můžete spustit nástroje příkazového řádku systému Linux, jako je je
, grep
, horní
a chmod
. Vzhledem k tomu, že používáte originální Ubuntu, běží lsb-release -a
vám poskytne následující výstup:
Můžeš použít apt-get
a přátele k instalaci nástrojů, jako je vim
, sakra
, obrazovka
, tmux
, nebo dokonce hrát hru o nethack:
Pamatujte však, že tento systém je ve verzi beta a ne určené pro pracovní zátěže serveru. Je to pouze nástroj pro vývojáře (a nadšence) k testování jejich aplikací zaměřených na Linux v systému Windows bez úprav. Nejedná se také o nástroj určený ke spouštění aplikací nebo prostředí Linux GUI nebo prostředí, jako je Gnome nebo KDE, i když to je u některých hacků také možné. Poté, co jsme to vyjasnili, pojďme se podívat na to, jak linuxový shell funguje ve Windows 10.
Subsystém Windows pro Linux (WSL)
Podle oficiální dokumentace „WSL je kolekce komponent, která umožňuje běh nativních binárních souborů Linux ELF64 na Windows“. Dělá to implementací virtualizovaného rozhraní jádra Linuxu nad jádro Windows NT. To znamená, že nepoužívá žádný kód ze skutečného jádra Linuxu - kdykoli aplikace provede systémové volání specifické pro Linux (syscall), WSL jej přeloží na ekvivalentní Windows syscall, který pak provede všechny těžké operace.
Rozdíly od virtuálních strojů a Cygwin
Pojďme se nyní podívat na to, jak se Linux Bash Shell v systému Windows 10 liší od virtuálních strojů a Cygwinu.
Virtuální stroje
Možná si říkáte: „Proč to používat? Proč nepoužívat pouze Linux VM ve Windows? “
Ve srovnání s virtuálním strojem, WSL používá méně zdrojů. Umožňuje vám také pracovat se soubory, jako byste pracovali v systému Linux, a zároveň vám poskytuje úplný přístup k základnímu souborovému systému Windows, aniž byste se museli spoléhat na sdílené složky nebo sdílené síťové složky..
Cygwin
Další populární metodou spouštění populárních nástrojů podobných systému Linux / Unix ve Windows je Cygwin. Největší rozdíl mezi těmito dvěma přístupy je v tom Cygwin není způsob, jak spustit nativní binární soubory pro Linux ve Windows. Poskytuje pouze sadu nástrojů GNU a Open Source, které poskytují funkčnost podobný k distribuci Linuxu ve Windows.
Na druhou stranu, Nástroje WSL jsou nativní Linux ELF-64 kompilované binární soubory běžící na Windows. Například spuštění apt-get install emacs
příkaz ve WSL stáhne a nainstaluje stejné soubory jako při instalaci Ubuntu 14.04 z oficiálních úložišť Ubuntu.
Uživatelé, oprávnění a souborové systémy ve WSL
Hierarchie systému souborů
WSL je nainstalován pod aktuálním uživatelem % LocalAppData% \ lxss \ rootfs
adresář. Toto je známé jako Prostředí WSL a funguje jako Linux “/
"(kořenový adresář. Například pokud je vaše uživatelské jméno v systému Windows beebom
, Kořenový adresář Linuxu bude umístěn v C: \ Users \ beebom \ AppData \ Local \ lxss \ rootfs.
To znamená, že každý uživatel Windows může mít své vlastní prostředí WSL a může provádět změny, jako je apt-get install
softwarové balíčky, aniž by to ovlivnilo ostatní uživatele systému Windows.
Je možné přistupovat k podkladovému systému souborů Windows ve WSL. Všechny disky jsou namontovány pod / mnt.
Například, C:\
je namontován pod / mnt / c
, D: \
je namontován pod / mnt / d
, atd.
Uživatelé a oprávnění
Při první instalaci WSL vás vyzve k vytvoření nového výchozího uživatele systému Linux. Tento uživatel nemusí mít stejný název jako aktuální uživatel systému Windows a obecně se s ním zachází jako se samostatnou entitou. Můžete dokonce vytvořit více uživatelů systému Linux ovládaných jediným uživatelem systému Windows.
Je možné získat vykořenit
oprávnění pomocí sudo
příkaz. Mějte na paměti tuto bytost vykořenit
ve WSL má dopad pouze na práva uživatele v prostředí Linuxu a souborovém systému - nemají žádný dopad na udělená oprávnění Windows. Například relace WSL s oprávněními správce systému Windows může cd / mnt / c / Uživatelé / Správce
zatímco relace Bash bez oprávnění správce by viděla Oprávnění odepřeno. Psaní na stroji sudo cd / mnt / c / Uživatelé / Správce
neposkytne přístup do adresáře správce, protože oprávnění jsou omezena systémem Windows.
Vlastnosti systému souborů specifické pro Linux
Linux je a citlivý na velká písmena Systém. To znamená, že foto.png
a Photo.png
jsou považovány za dva různé soubory. Zatímco Windows není případ citlivý ve výchozím nastavení je to stále případ vědom. Což znamená, že zatímco foto.png
a Photo.png
nejsou považovány za dva odlišné soubory, to rozhodně je vědom rozdílu v případě.
WSL zpracovává velká a malá písmena stejně jako v systému Linux. Je dokonce možné vytvořit dva soubory, jejichž název se mimo prostředí WSL liší pouze případ od případu. Pamatujte však, že mnoho aplikací pro Windows takové situace nezvládá a nemusí být schopen otevřít jeden nebo oba soubory.
Podobně, symbolické odkazy jsou podporovány za předpokladu, že používáte systém souborů NTFS. Symbolické odkazy však budou fungovat pouze uvnitř WSL a nelze je vyřešit jinými aplikacemi systému Windows.
Linux také podporuje téměř všechny speciální znaky uvnitř názvů souborů, zatímco Windows je přísnější. WSL však umožňuje použití těchto speciálních znaků za předpokladu, že jsou omezeny na prostředí systému Linux.
VIZ TÉŽ: Jak synchronizovat svůj účet OneDrive v počítači se systémem Linux
Připraveno ke spuštění příkazového řádku systému Linux v systému Windows?
Takto tedy funguje Ubuntu Bash nebo Linux Bash Shell, také známý jako Windows Subsystem pro Linux, na Windows 10 (s aktualizací Anniversary). Spolu s jeho fungováním jsme se také naučili, jak je to jiné a lepší než tradiční metody spouštění příkazů specifických pro Linux v systému Windows. Pokud jste tedy vždy chtěli používat příkazy Linuxu, začněte a pokud máte otázky, komentáře nebo tipy, dejte nám vědět v sekci komentáře.