Jak zajistit, aby proces terminálu běžel na pozadí

Proces terminálu na pozadí

Pravděpodobná situace: rádi byste měli čistou instalaci. Data obnovíte ručně a po instalaci operačního systému nainstalujete vždy stejný software. Máte dlouhý příkaz k instalaci všech balíků APT jeden po druhém. Zadáte příkaz. Počkáte, až to skončí. Váš tým není nejmocnější na světě a trpí. Existuje pro to řešení? Faktem je, že můžeme spustit terminální proces na pozadí a v tomto článku vám ukážeme jak.

Výše uvedená situace se mi stala při používání Ubuntu. Nainstaloval jsem spoustu softwaru a odinstaloval jsem další, abych to nechal tak, jak se mi líbilo, ale v Kubuntu to pro mě není nutné, protože má téměř vše, co potřebuji, z krabice. Ať je to cokoli, je způsob, jak se vyhnout otevření terminálového okna které mohou rušit nebo můžeme proces zavřít a zastavit náhodou. To je něco, co se nám nemůže stát, pokud to spustíme na pozadí.

bg převezme proces z terminálu na pozadí

En Tento článek Vysvětlíme, proč nemůžeme kopírovat a vložit pomocí zástupců celého života v terminálu. Tyto klávesové zkratky se používají k provádění dalších akcí, například Ctrl + C k zastavení procesu. V mnoha dalších programech Ctrl + Z Slouží k vrácení poslední změny, ale také nefunguje v terminálu. To, co dělá v terminálu, je pozastavení procesu a přidání do „úloh“. Nejrychlejším příkladem, který můžeme vidět, jak to funguje, je aktualizace balíčků APT (sudo apt update) a stisknutí Ctrl + Z. Uvidíme, že terminál říká „[1] + Stopped“, což znamená, že jsme zastavili proces číslo 1 a přidali jej do seznamu úloh pro tento terminál; pokud půjdeme ven, práce jdou s ním. K jejich restartu použijeme fg udržet ji v popředí nebo bg tak, aby zůstala v pozadí. V obou případech budeme i nadále vidět proces v terminálu a zastaví se, pokud zavřeme okno.

Jakmile je terminální proces, nebo několik, pozastaven, můžeme vidět, co čeká, pomocí Comando pracovních míst které jsme zmínili výše. Pokud je zastaven více než jeden proces, přidáme číslo k fg o bg obnovit konkrétní. Možnost bg (background = background) nám neumožňuje znovu zastavit proces. Pokud chceme, aby proces běžel přímo na pozadí, přidáme „&“ bez uvozovek.

pracovních míst

popřít umožňuje pokračovat v práci při ukončení terminálu

Pokud chceme, aby terminální proces pokračoval po zavření okna na pozadí, použijeme příkaz popřít. Chcete-li to provést, postupujte takto:

  1. Zahájíme proces.
  2. Zastavíme to pomocí Ctrl + Z.
  3. Píšeme pracovních míst abyste viděli číslo procesu.
  4. Napíšeme následující příkaz, kde se číslo za procentem shoduje s procesem, který chceme spustit na pozadí po ukončení terminálu:
disown -h %1
  1. Restartujeme proces pomocí následujícího příkazu (pomocí 1, pokud se jedná o proces, který chceme restartovat):
bg 1
  1. Pokud si přejeme, zavřeme terminál.

Nejlepším způsobem, jak to zkontrolovat, je rozbalit velký soubor. Na předchozím snímku obrazovky vidíte, jak jsem dekomprimoval soubor 7z z terminálu. V závislosti na velikosti souboru to může trvat několik minut. Pokud uděláte to, co jsme vysvětlili výše, můžete přejít na cestu, kde jsme vám řekli, abyste jej rozbalili (ve výchozím nastavení / HOME), klikli pravým tlačítkem, zpřístupnili jeho vlastnosti a zkontrolovali, že se velikost postupně zvyšuje. Pokud se tak nestane, zavřeme okno vlastností a znovu k němu přistoupíme. Problém? Neexistuje způsob, jak přesně zjistit, kdy byl proces dokončen. V případě rozbalení souboru se předpokládá, že je kompletní, když se již nezvětšuje. V každém případě můžeme ověřit, že po zavření terminálu pokračuje v práci.

Nerad bych tento článek zakončil, aniž bych něco řekl: ačkoli Všechno zde vysvětlené je bezpečné, doporučuji nejprve zkontrolovat, zda vše funguje správně ve vašem operačním systému s něčím, co není příliš důležité. Například stažení souboru 7z a jeho rozbalení. Pokud vidíte, že vše funguje tak, jak jsme vysvětlili v tomto příspěvku, pokračujte v všem ostatním. Bude užitečné mít možnost spouštět terminálové procesy na pozadí?


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.