GNU/Linux >> Znalost Linux >  >> Linux

Jak používat příkaz Top jako správce úloh v systému Linux


Příkaz top nabízí rychlý přehled informací o systému. Hlásí data o aktuálních procesech, která se obnovují (ve výchozím nastavení) každé 3 sekundy.

Používání a porozumění programu jako top je základní dovedností pro správu systému. V tomto článku vám vysvětlím, jak se s důvěrou orientovat v horním příkazu.

Porozumění hlavnímu příkazu v Linuxu

top

Top je přímočarý k použití. Tento jednoduchý příkaz vás přenese do nejvyšší aplikace. Když chcete skončit, ukončete zadáním písmene q . Existují také další klíčové příkazy pro jeho plné využití, o kterých budu diskutovat později.

Snadno tak můžete zkontrolovat vytížení procesoru, počet aktuálních úloh a také zobrazit informace o využití paměti. Všimnete si, že při běhu jsou v podstatě 2 sekce s informacemi.

V horní části našeho terminálu získáváme naše přehledová data včetně využití paměti a zatížení procesoru. Pod tím máme tabulku s konkrétními procesy se spoustou podrobností.

Je zde zobrazeno mnoho podrobných informací ve zhuštěném formátu. Rozdělme si to na menší kousky, abychom lépe porozuměli. První čtyři řádky obsahují přehledová data, o kterých jsem se zmínil dříve. Vezměme je řádek po řádku a vysvětleme, co se děje.

Informace o uživateli, doba provozu a průměrné zatížení

top - 11:49:05 up 27 min,  1 user,  load average: 1.13, 0.44, 0.28

První informací je časové razítko, které je docela samovysvětlující. Vedle toho uvidíte dobu spuštění systému. V mém případě je to 24 minut. To znamená, jak dlouho počítač běží bez přerušení. Dále vidíme tři hodnoty pro průměr zatížení. Tyto údaje představují hodnoty za 1 minutu, 5 minut a 15 minut v daném pořadí.

Pro naše účely lze hodnoty zatížení chápat jako odhad „zátěže“ na výpočetní výkon vašeho systému. Například zatížení 1,0 by znamenalo, že aktuálně pracuje 100 % vašeho výpočetního výkonu.

Úkoly

Tasks: 210 total,   2 running, 208 sleeping,   0 stopped,   0 zombie

Systémové procesy jsou také známé jako úkoly. Operační systém se spoléhá na řadu procesů běžících na pozadí, které umožňují další činnosti, jako je používání webového prohlížeče.

Procesy lze spouštět mnoha různými způsoby a jsou upřednostňovány pomocí různých algoritmů. To slouží k optimalizaci toho, jak a kdy počítač provádí úkol. Toto je zamýšleno jako přehled na vysoké úrovni, takže to zde zjednodušíme. Chceme, aby naši čtenáři věděli, že výpočetní technika obsahuje více než zde popsané stavy.

To znamená, že se podívejme, co každý z nich znamená:

Stát Popis
Spuštěno Aktivní / ve frontě ke zpracování
Spící Čekání na dokončení procesu
Zastaveno Přerušeno signálem řízení úlohy (například CTRL+C)
Zombie Skládá se z „osiřelých“ dětských úkolů / již neběží

Informace o CPU v horním příkazu

%Cpu(s):100.0 us,  0.0 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

Každá z hodnot zde představuje procento času stráveného na příslušných úkolech. Níže uvedená tabulka vysvětluje, co jednotlivé zkratky znamenají. To poskytuje poměrně podrobný rozpis toho, jak je využíván výpočetní výkon.

Zkratka Popis
nás Zpracování provedeno v uživatelském režimu
sy Zpracování probíhá v režimu systému/kernelu
ni Čas strávený „pěknými“ procesy
id Čas strávený nečinností
wa Čekání na dokončení I/O procesu
ahoj Čas strávený kvůli přerušení hardwaru
si Čas strávený kvůli přerušení softwaru
st Čas „ukradl“ prostředky virtuálního stroje

Využití paměti v horním příkazu

MiB Mem :   7974.7 total,   5974.0 free,   1046.9 used,    953.9 buff/cache
MiB Swap:   4095.5 total,   4095.5 free,      0.0 used.   6660.1 avail Mem 

Tyto řádky napodobují výstup příkazu free v Linuxu.

Tabulka úkolů

To je skutečně srdce nejvyššího velení. Pokud jste přišli z Windows, pravděpodobně jste obeznámeni s používáním CTRL+ALT+DEL pro přístup do Správce úloh. Toto je jakási „oříznutá“ verze toho. Zobrazí se tabulka všech aktuálně spuštěných úloh.

Zde je ukázka některých úkolů zobrazených nahoře.

PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                 
1703 christo+  20   0 2338396 342200 114744 S   7.9   4.2   0:25.05 gnome-shell                                             
1285 root      20   0  237252  72360  46012 S   4.3   0.9   0:04.00 Xorg                                                    
2158 christo+  20   0  496976  42952  32192 S   4.0   0.5   0:01.74 gnome-terminal-                                         
2703 christo+  20   0   21528   3880   3204 R   0.7   0.0   0:00.40 top                                        

Zde je tabulka, která vám pomůže pochopit zkratky záhlaví sloupců.

Zkratka Popis
PID ID procesu (Unique Positive Integer)
UŽIVATEL Uživatelské jméno
PR Priorita (jádro)
NI Skvělá hodnota
VIRT Virtuální paměť
RES Rezidentní velikost (fyzická paměť)
SHR Sdílená paměť
S Stav procesu (Spuštěno, Zastaveno atd.)
%CPU Zatížení CPU
%MEM Procento RES / celková RAM
TIME + Celkový čas strávený procesem
PŘÍKAZ Příkaz, který zahájil proces

Toto jsou výchozí pole v mé distribuci. Váš systém se může mírně lišit. Ty lze přizpůsobit zadáním F zatímco top běží. Zobrazí se úplný seznam dostupných možností

Přizpůsobení a interakce s výstupem horního příkazu

Jakmile budete mít displej nastavený tak, jak se vám líbí. Je čas udělat nějakou práci. Pojďme se podívat na úplný seznam možností pro top (přístupné zadáním h) a podívejte se na některé příklady.

1. Měřítko barev a paměti

Z,B,E,e   Global: 'Z' colors; 'B' bold; 'E'/'e' summary/task memory scale

Pokryli jsme změny barev, ale můžete také upravit měřítko paměti od bajtů až po petabajty. E upravuje čísla ze souhrnné části, zatímco e upraví měřítko v tabulce úloh.

2. Přepnout zobrazení pro souhrnné informace

l,t,m     Toggle Summary: 'l' load avg; 't' task/cpu stats; 'm' memory info

Každá příslušná klávesa upraví možnosti zobrazení. Výchozí nastavení je textový výstup, ale existují také simulované pruhy nebo můžete položky zcela vypnout.

3. Zobrazit informace specifické pro CPU

0,1,2,3,I Toggle: '0' zeros; '1/2/3' cpus or numa node views; 'I' Irix mode

Na svém virtuálním počítači mám pouze jeden CPU, ale můžete vidět, jak by to fungovalo, kdyby jich bylo více. Můžete se rozdělit do jednotlivých uzlů s jejich vlastními statistikami.

4 manipulace s horním polem

f,F,X     Fields: 'f'/'F' add/remove/order/sort; 'X' increase fixed-width

Můžeme přidat nebo odebrat jakákoli pole, která chceme zobrazit, můžeme také upravit pevnou šířku textu.

Podobně můžete také třídit výstup horních příkazů.

5. Vyhledejte řetězec

L,&,<,> . Locate: 'L'/'&' find/again; Move sort column: '<'/'>' left/right

6. Uspořádejte svůj pohled

R,H,V,J . Toggle: 'R' Sort; 'H' Threads; 'V' Forest view; 'J' Num justify

Tyto příkazy vám poskytují možnosti pro uspořádání informací o úkolu. Seřadit zobrazí všechny úkoly podle PID, nikoli podle výchozí funkce řazení podle aktivity. Vlákna změní váš podrobný a souhrnný pohled na orientovaný na vlákna místo na úkoly. Forest view uspořádává procesy do „stromové“ struktury, aby demonstroval vztahy mezi rodiči a dětmi. Číselné zarovnání změní výchozí polohu číselných polí zarovnaných doleva.

7. Přepínejte úplnou cestu, nečinné úlohy, kumulativní čas a zarovnání textu

c,i,S,j . Toggle: 'c' Cmd name/line; 'i' Idle; 'S' Time; 'j' Str justify

Když přepnete c , uvidíte celou cestu příkazů. Nečinný odebere z displeje všechny neaktivní úlohy. S používá kumulativní čas. Zarovnání řetězců změní výchozí polohu polí řetězců zarovnaných doleva.

8. Přepnout výběr

x,y     . Toggle highlights: 'x' sort field; 'y' running tasks

Pomocí x přepínáte třídicí pole a y třídíte běžící úlohy.

9. Filtrujte podle uživatele nebo pole/hodnoty

u,U,o,O . Filter by: 'u'/'U' effective/any user; 'o'/'O' other criteria

Můžeme jednoduše odfiltrovat konkrétní uživatele nebo pole/hodnoty. To je skvělé pro systém s mnoha uživateli nebo mnoha otevřenými úkoly. Filtry vyžadují operátor porovnání mezi polem a hodnotou. Jak můžete vidět zde, napsal jsem COMMAND=top pro filtrování všech příkazů kromě top. Použití shift s kterýmkoli příkazem přepíná rozlišování malých a velkých písmen.

10. Filtrovat počet procesů

n,#,^O  . Set: 'n'/'#' max tasks displayed; Show: Ctrl+'O' other filter(s)

Pomocí n or # vám dá možnost zadat číselnou hodnotu. Zobrazí se pouze požadovaný počet procesů.

11. Renice or Kill Process s PID v horním příkazu

k,r       Manipulate tasks: 'k' kill; 'r' renice

Pomocí těchto příkazů můžeme změnit hodnotu nice nebo proces ukončit. Odfiltroval jsem konkrétní PID, aby bylo lépe vidět. Změnil jsem hezkou hodnotu na 20. Pak jsem poslal příkaz kill. Použití kill ve výchozím nastavení vysílá signál SIGTERM. To mu umožňuje dokončit provádění kódu před ukončením.

12. Změňte výchozí čas aktualizace v příkazu top

d or s    Set update interval

Zde jsem změnil výchozí čas aktualizace z každých 3,0 sekund na každou 1 sekundu. Kdykoli si můžete upravit čas, který vyhovuje vašim potřebám. Je možné použít d nebo s k provedení stejné operace.

Závěr

Líbil se vám náš průvodce nahoru? Doufám, že vás tyto tipy naučily něco nového o práci s top. Pokud se vám tato příručka líbí, sdílejte ji na sociálních sítích.

Pokud máte nějaké připomínky nebo dotazy, zanechte je níže. Pokud máte nějaké návrhy na témata, která byste rádi viděli, klidně je také zanechte. Děkuji za přečtení.


Linux
  1. Jak používat příkaz sed pro Linux

  2. Jak používat Linuxový příkaz grep

  3. Jak používat příkaz historie v Linuxu

  1. Jak používat příkaz historie Linuxu

  2. Jak používat příkaz id v Linuxu

  3. Jak používat příkaz „screen“ v Linuxu

  1. Jak používat příkaz md5sum v Linuxu

  2. Jak používat příkaz xargs pro Linux

  3. Jak používat Linuxový příkaz tee