V operačních systémech Linux a Unix je spuštěná instance příkazu známá jako proces. Každý proces můžete identifikovat pomocí jedinečného ID procesu. Linux poskytuje nástroje příkazového řádku pro efektivní výpis, správu a monitorování těchto procesů.

Tyto nástroje můžete použít k upřednostnění každého procesu nebo je umístit na pozadí nebo do popředí, abyste mohli efektivně spravovat systémové prostředky.

Tato příručka pro správu procesů v Linuxu obsahuje nástroje jako ps, kill, renice a další příkazy, které pomáhají správcům systému při správě a výpisu procesů.

Výpis procesů pomocí příkazu ps

Nejstarší a nejčastěji používaný nástroj příkazového řádku pro výpis aktuálně běžících procesů v Linuxu je ps. Přestože vrchní příkaz je další interaktivní a obrazově orientovaný způsob správy a výpisu systémových procesů, ps také zobrazuje další informace, jako jsou zdroje, které každý proces spotřebovává.

Díky víceuživatelskému prostředí je každý proces v Linuxu spojen se samostatným uživatelským a skupinovým účtem. Informace o účtu s podrobnostmi o procesu vám tedy pomáhají získat přístup k systémovým prostředkům, které může proces používat.

Například procesy běžící s oprávněními superuživatele mohou přistupovat k více systémovým zdrojům než běžný uživatel, a právě zde ps pomáhá systémovým administrátorům.

Následující výstup je příkladem výpisu procesů s uživatelskými jmény, uplynulým časem a související spotřebou paměti a CPU:

Můžete si také povšimnout sloupce STAT, který ukazuje stav běžícího procesu. R představuje proces, který právě běží, a S je spící proces se znaménkem plus označujícím operace v popředí.

Můžete vypsat všechny procesy aktuálního uživatele následovně:

ps ux | méně

Seznam procesů pro všechny uživatele:

ps aux | méně

Správa procesů pomocí System Monitor

System Monitor poskytuje grafický způsob zobrazení a správy procesů. Chcete-li spustit Sledování systému, přejděte na Aplikace > Sledování systému. Přepněte na Procesy kartu pro zobrazení všech běžících procesů.

Ve výchozím nastavení zobrazuje procesy v abecedním pořadí pro aktuálního uživatele. Kliknutím na záhlaví libovolného sloupce můžete seznam procesů znovu seřadit. Kromě toho můžete kliknout na %PROCESOR a Paměť nadpisy pro zobrazení procesů spotřebovávajících více výpočetního výkonu a paměti.

Sledování systému vám umožňuje řídit procesy různými způsoby, což znamená, že můžete zastavit, ukončit, pokračovat, ukončit a změnit prioritu procesu pouhým kliknutím pravým tlačítkem na název procesu.

Je to nejlepší nástroj pro začínající uživatele Linuxu, kteří nevědí, jak pracovat s nástroji příkazového řádku.

Příbuzný: Jak zobrazit výsledek nejlepších procesů a seřadit podle paměti

Práce s procesy na pozadí/v popředí

Přichází čas, kdy musíte k systému Linux přistupovat přes síť pouze pomocí příkazového řádku. To omezuje efektivní správu více aktivních programů. Ale shell vám umožňuje spravovat programy přepínáním na pozadí a popředí.

Jak spustit proces na pozadí

Chcete-li spustit program, zatímco budete pokračovat v práci v shellu, spusťte příkaz, zastavte jej a umístěte jej na pozadí pomocí Ctrl + Z. Chcete-li spustit program přímo na pozadí, přidejte ampersand (&) na konec příkazu takto:

najít /usr > /tmp/allusrfiles &

Poznamenejte si číslo úlohy a ID procesu. Mějte na paměti, že příkazy, které vyžadují vstup z terminálu, nelze spouštět na pozadí.

Můžete použít pracovní místa příkaz k zobrazení všech programů/příkazů spuštěných na pozadí nebo těch, které jste zastavili (pomocí Ctrl + Z).

pracovní místa

Jak obnovit procesy na popředí a na pozadí

Chcete-li pokračovat v úloze, kterou jste umístili na pozadí, použijte fg příkaz a přenese příkaz do popředí.

fg %

Podobně, pokud jste zastavili spuštění příkazu na pozadí, můžete jej znovu spustit na pozadí pomocí příkazu bg, a to následovně:

bg %

Zabíjení procesů v Linuxu

Stejně jako vám grafický nástroj, jako je System Monitor, umožňuje ukončit, zastavit a pokračovat v procesu, můžete také použít nástroje příkazového řádku, jako je zabít a zabít všechny k odeslání signálu běžícímu procesu.

Kromě jednoduchého zabití procesu pomáhá příkaz kill také při odesílání různých signálů ke správě chování procesu.

K použití signálu můžete použít jména nebo čísla.

kill -signalnumber 
kill -signalname

Například následující příkazy odesílají signál SIGKILL procesu s PID 1987:

zabít -9 1987
zabít -SIGKILL 1987

Nejčastěji používané procesní signály jsou:

Volba Popis
SIGKILL (9) Okamžitě ukončí proces
SIGTERM (15) Ukončí proces
SIGSTOP (19/28/25) Zastaví proces
SIGCONT (19/28/25) Pokračuje v procesu po jeho zastavení
PŘIHLÁSIT (1) Řekne procesu, aby si přečetl svůj konfigurační soubor

Všimněte si, že různé procesy reagují na tyto signály odlišně, ale nemohou zastavit signály SIGSTOP a SIGKILL. Chcete-li si o těchto signálech přečíst více, zadejte následující příkaz:

muž 7 signál

Další informace: Jak ukončit nereagující procesy v Linuxu pomocí kill a pkill

Renicing procesů v Linuxu

Linuxové jádro upřednostňuje běžící procesy a přiděluje systémové prostředky s ohledem na oprávnění uživatelského účtu. Jádro bere v úvahu i další faktor, kterým je „hezká“ hodnota každého běžícího procesu.

Výchozí hodnota nice procesu je nula, ale můžete nastavit rozsah mezi -20 až 19. Pár faktů o nastavení proces priorita s nice and renice hodnoty jsou:

  • Proces s nízkou hodnotou nice má větší přístup ke zdrojům CPU
  • Běžný uživatel může pouze změnit prioritu svých procesů
  • Běžný uživatel může nastavit pouze hodnoty mezi -20 a 19 a může nastavit pouze vyšší hodnotu
  • Superuživatel může nastavit komukoli procesy na libovolnou hodnotu, vysokou nebo nízkou

Snadná správa procesů v systému Linux

Víceuživatelské prostředí má několik procesů, které vyžadují dostatečné znalosti správy systémových prostředků, aby se předešlo úzkým místům a omezením systému. Součástí úkolu je správa procesů jejich spouštěním na pozadí/v popředí, jejich zabíjením nebo renicingem.

Můžete se také dozvědět o hlavním příkazovém nástroji pro zobrazení a řazení procesů a naučit se ukončovat nereagující procesy v Linuxu.

7 způsobů, jak zabít nereagující programy v Linuxu

Když aplikace pro Linux přestane reagovat a spadne, jak ji můžete zabít? Vyzkoušejte jeden z těchto triků, jak vynutit ukončení programu v Linuxu.

Přečtěte si další

PodíltweetE-mailem
Související témata
  • Linux
  • Počítačový procesor
  • Linuxové příkazy
  • Základní Linux
O autorovi
Rumaisa Niazi (13 zveřejněných článků)

Rumaisa je spisovatelkou na volné noze v MUO. Nosila mnoho klobouků, od matematičky po nadšence pro informační bezpečnost, a nyní pracuje jako analytička SOC. Mezi její zájmy patří čtení a psaní o nových technologiích, linuxových distribucích a všem kolem Information Security.

Více od Rumaisa Niazi

Přihlaste se k odběru našeho newsletteru

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné e-knihy a exkluzivní nabídky!

Chcete-li se přihlásit k odběru, klikněte sem