V operačných systémoch Linux a Unix je spustená inštancia príkazu známa ako proces. Každý proces môžete identifikovať podľa jedinečného ID procesu. Linux poskytuje nástroje príkazového riadka na efektívny zoznam, správu a monitorovanie týchto procesov.

Tieto nástroje môžete použiť na uprednostnenie každého procesu alebo ich umiestniť na pozadie alebo do popredia, aby ste mohli efektívne spravovať systémové prostriedky.

Táto príručka pre správu procesov v systéme Linux obsahuje nástroje ako ps, kill, renice a ďalšie príkazy, ktoré pomáhajú správcom systému pri správe a výpise procesov.

Výpis procesov pomocou príkazu ps

Najstarší a najčastejšie používaný nástroj príkazového riadka na zoznam aktuálne spustených procesov v systéme Linux je ps. Aj keď vrchný príkaz je ďalší interaktívny a na obrazovku orientovaný spôsob správy a zoznamu systémových procesov, ps tiež zobrazuje ďalšie informácie, ako sú zdroje, ktoré každý proces spotrebúva.

Vzhľadom na prostredie s viacerými používateľmi je každý proces v systéme Linux spojený so samostatným používateľským a skupinovým účtom. Informácie o účte s podrobnosťami o procese vám teda pomáhajú získať prístup k systémovým prostriedkom, ktoré môže proces použiť.

instagram viewer

Napríklad procesy bežiace s oprávneniami superužívateľa môžu pristupovať k viac systémovým zdrojom ako bežný používateľ a práve tu pomáha systém ps správcom systému.

Nasledujúci výstup je príkladom výpisu procesov s používateľskými menami, uplynutým časom a súvisiacou spotrebou pamäte a CPU:

Môžete si tiež všimnúť stĺpec STAT, ktorý zobrazuje stav bežiaceho procesu. R predstavuje proces, ktorý práve prebieha, a S je spiaci proces so znamienkom plus označujúcim operácie v popredí.

Môžete uviesť všetky procesy aktuálneho používateľa takto:

ps ux | menej

Ak chcete zobraziť zoznam procesov pre všetkých používateľov:

ps aux | menej

Riadenie procesov pomocou monitora systému

System Monitor poskytuje grafický spôsob zobrazenia a správy procesov. Ak chcete spustiť System Monitor, prejdite na Aplikácie > Monitor systému. Prepnite na Procesy zobrazíte všetky spustené procesy.

Štandardne zobrazuje procesy v abecednom poradí pre aktuálneho používateľa. Zoznam procesov môžete pretriediť kliknutím na hlavičku ľubovoľného stĺpca. Okrem toho môžete kliknúť na %CPU a Pamäť nadpisy na zobrazenie procesov spotrebúvajúcich viac výpočtového výkonu a pamäte.

System Monitor vám umožňuje spravovať procesy rôznymi spôsobmi, čo znamená, že môžete zastaviť, ukončiť, pokračovať, ukončiť a zmeniť prioritu procesu jednoduchým kliknutím pravým tlačidlom myši na názov procesu.

Je to najlepší nástroj pre začínajúcich používateľov Linuxu, ktorí nevedia, ako pracovať s nástrojmi príkazového riadka.

Súvisiace: Ako zobraziť výsledok top procesov a zoradiť podľa pamäte

Práca s procesmi na pozadí/v popredí

Prichádza čas, keď musíte pristupovať k systému Linux cez sieť iba pomocou príkazového riadku. To obmedzuje efektívnu správu viacerých aktívnych programov. Shell vám však umožňuje spravovať programy ich prepínaním do pozadia a popredia.

Ako spustiť proces na pozadí

Ak chcete spustiť program, zatiaľ čo budete pokračovať v práci v prostredí shell, spustite príkaz, zastavte ho a umiestnite ho na pozadie pomocou Ctrl + Z. Ak chcete spustiť program priamo na pozadí, pridajte ampersand (&) na koniec príkazu takto:

nájsť /usr > /tmp/allusrfiles &

Poznamenajte si číslo úlohy a ID procesu. Majte na pamäti, že príkazy, ktoré vyžadujú vstup z terminálu, nemôžete spúšťať na pozadí.

Môžete použiť pracovných miest príkaz na zobrazenie všetkých programov/príkazov spustených na pozadí alebo tých, ktoré ste zastavili (pomocou Ctrl + Z).

pracovných miest

Ako obnoviť procesy v popredí a na pozadí

Ak chcete pokračovať v úlohe, ktorú ste umiestnili na pozadí, použite tlačidlo fg príkaz, a tým sa príkaz dostane do popredia.

fg %

Podobne, ak ste zastavili spustenie príkazu na pozadí, môžete ho znova spustiť na pozadí pomocou príkazu bg takto:

bg %

Zabíjanie procesov v systéme Linux

Tak ako vám grafický nástroj, akým je System Monitor, umožňuje zabiť, zastaviť a pokračovať v procese, môžete použiť aj nástroje príkazového riadka, ako napr. zabiť a zabiť všetkých poslať signál bežiacemu procesu.

Okrem jednoduchého zabitia procesu, príkaz kill tiež pomáha pri odosielaní rôznych signálov na riadenie správania procesov.

Na používanie signálu môžete použiť mená alebo čísla.

kill -signalnumber 
kill -signalname

Napríklad nasledujúce príkazy posielajú signál SIGKILL procesu s PID 1987:

zabiť -9 1987
zabiť -SIGKILL 1987

Najbežnejšie používané procesné signály sú:

Možnosť Popis
SIGKILL (9) Okamžite zabíja proces
SIGTERM (15) Ukončí proces
SIGSTOP (19/28/25) Zastaví proces
SIGNCONT (19/28/25) Pokračuje v procese po jeho zastavení
SIGUP (1) Hovorí procesu, aby si prečítal svoj konfiguračný súbor

Všimnite si, že rôzne procesy reagujú na tieto signály odlišne, ale nedokážu zastaviť signály SIGSTOP a SIGKILL. Ak si chcete o týchto signáloch prečítať viac, zadajte nasledujúci príkaz:

signál muža 7

Uč sa viac: Ako ukončiť nereagujúce procesy v Linuxe pomocou kill a pkill

Renicing procesov v systéme Linux

Linuxové jadro uprednostňuje spustené procesy a priraďuje systémové prostriedky na základe privilégií používateľského účtu. Jadro berie do úvahy aj ďalší faktor, ktorým je „pekná“ hodnota každého spusteného procesu.

Predvolená hodnota nice procesu je nula, ale môžete nastaviť rozsah od -20 do 19. Niektoré fakty o nastavení proces priorita s nice and renice hodnoty sú:

  • Proces s nízkou hodnotou nice má väčší prístup k prostriedkom CPU
  • Bežný používateľ môže iba zmeniť prioritu svojich procesov
  • Bežný používateľ môže nastaviť iba hodnoty medzi -20 a 19 a môže nastaviť iba vyššiu hodnotu
  • Superuser môže nastaviť komukoľvek procesy na akúkoľvek hodnotu, vysokú alebo nízku

Jednoduché riadenie procesov v systéme Linux

Viacužívateľské prostredie má niekoľko procesov, ktoré vyžadujú dostatočné znalosti o správe systémových prostriedkov, aby sa predišlo úzkym miestam a systémovým obmedzeniam. Časť úlohy zahŕňa riadenie procesov ich spúšťaním na pozadí/v popredí, ich zabíjaním alebo obnovovaním.

Môžete sa tiež dozvedieť o hlavnom príkazovom nástroji na zobrazenie a triedenie procesov a naučiť sa ukončiť nereagujúce procesy v systéme Linux.

7 spôsobov, ako zabiť nereagujúce programy v systéme Linux

Keď aplikácia pre Linux prestane reagovať a zlyhá, ako ju môžete zabiť? Vyskúšajte jeden z týchto trikov na vynútenie ukončenia programu v systéme Linux.

Prečítajte si ďalej

zdieľamTweetujteEmail
Súvisiace témy
  • Linux
  • Počítačový procesor
  • Linuxové príkazy
  • Linux Elementary
O autorovi
Rumaisa Niazi (13 publikovaných článkov)

Rumaisa je spisovateľkou na voľnej nohe v MUO. Nosila veľa klobúkov, od matematičky až po nadšenca informačnej bezpečnosti, a teraz pracuje ako analytička SOC. Medzi jej záujmy patrí čítanie a písanie o nových technológiách, distribúciách Linuxu a všetkom okolo informačnej bezpečnosti.

Viac od Rumaisa Niaziho

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber