Skip to content

Udržování distribuce WSL při životě (keep-alive) ​

Mnoho uživatelů, kteří s WSL2 teprve začínají, narazí na jednu "otázku": nainstalovali jste si Linux, ale proč se po zavření terminálu po chvíli "sám vypne"? Proč nemůže běžet nepřetržitě?

Tento článek nejprve popíše tento jev, poté vysvětlí, proč Microsoft WSL navrhl tímto způsobem, a nakonec ukáže, jak pomocí WSL Dashboard spustit distribuci Linuxu s keep-alive (udržováním při životě).

1. Současný stav: po zavření terminálu se Linux brzy automaticky vypne ​

Zažili jste někdy tento scénář?

  1. Otevřete terminál některé distribuce Linuxu a Linux se spustí automaticky, aniž byste museli zadat jakýkoli příkaz;
  2. Po zavření okna terminálu Linux dále neběží — přibližně po 60 sekundách se automaticky vypne;
  3. Terminál znovu otevřete a Linux se opět automaticky spustí, a tak pořád dokola.

NOTE

Výchozí "časový limit nečinnosti" WSL2 je přibližně 60 sekund: když v distribuci neběží žádný proces (například když zavřete všechny terminály), virtuální počítač WSL se automaticky vypne, aby uvolnil systémové prostředky, jako je paměť.

Toto chování je výchozí konstrukce WSL2: není to ani porucha, ani chyba.

2. Proč Microsoft navrhl WSL tímto způsobem? ​

2.1 WSL2 je v podstatě odlehčený virtuální počítač ​

WSL2 spouští kompletní jádro Linuxu prostřednictvím odlehčeného virtuálního počítače Hyper-V (utility VM). Každá běžící distribuce reálně zabírá paměťové prostředky. Pokud by všechny distribuce trvale běžely na pozadí, provoz více distribucí na jednom počítači by zbytečně plýtval stovkami MB až několika GB paměti a zpomaloval by celý stroj.

2.2 Princip návrhu: prostředky přidělované podle potřeby ​

Filozofií Windows je "přidělit prostředky podle potřeby a uvolnit je, když se nepoužívají":

  • pro většinu uživatelů: otevřít terminál = potřebuji Linux; zavřít terminál = zatím nepotřebuji;
  • jen malá část uživatelů potřebuje, aby Linux běžel 7×24 hodin nepřetržitě.

Proto WSL používá strategii "spustit na vyžádání, zastavit při nečinnosti", díky níž se prostředky, jako je paměť, automaticky vrací systému, když nejsou potřeba.

2.3 Přirovnání: zhasnout světlo při odchodu z místnosti ​

Automatické vypínání WSL při nečinnosti je jako zhasnutí světla při odchodu z místnosti: šetří energii a je efektivnější. Pro někoho, kdo potřebuje, aby "místnost byla stále osvětlená", je to ale nepříjemné — a právě odtud pramení potřeba keep-alive.

TIP

Pokud potřebujete, aby Linux běžel trvale (například pro nasazení služeb, spouštění plánovaných úloh nebo zprovoznění vývojového serveru), přečtěte si další kapitolu a pomocí WSL Dashboard udržujte distribuci při životě.

3. Spuštění Linuxu s keep-alive pomocí WSL Dashboard ​

WSL Dashboard nabízí dva jednoduché způsoby, jak udržet vaši distribuci Linuxu v chodu.

Způsob 1: klikněte na tlačítko "Spustit" ​

V seznamu "Nainstalované distribuce Linuxu" ve WSL Dashboard:

  1. najděte distribuci, kterou chcete udržovat při životě;
  2. klikněte na tlačítko "Spustit" na řádku dané distribuce.

Po kliknutí se distribuce okamžitě probudí a běží dál: dokud ji sami nezastavíte, nebude kvůli nečinnosti automaticky vypnuta. Tento způsob se hodí pro dočasné scénáře keep-alive, kdy Linux potřebujete běžet "právě teď".

Způsob 2: zaškrtněte "Automaticky spustit tuto distribuci při startu Windows." ​

V seznamu "Nainstalované distribuce Linuxu" ve WSL Dashboard:

  1. klikněte na tlačítko "Nastavení" na řádku cílové distribuce a otevřete okno nastavení;
  2. v okně zaškrtněte "Automaticky spustit tuto distribuci při startu Windows.";
  3. uložte nastavení.

Po zaškrtnutí se při každém spuštění/přihlášení do Windows distribuce spustí automaticky, bez jakékoli ruční činnosti — keep-alive funguje rovnou od startu. Tento způsob se hodí pro scénáře, kdy Linux potřebuje být dlouhodobě online (například vývojový server nebo stálé služby).

TIP

  • Pouze dočasná potřeba → použijte způsob 1 (klikněte na "Spustit");
  • Potřeba dlouhodobě online → použijte způsob 2 (zaškrtněte "Automaticky spustit tuto distribuci při startu Windows.").