Výkon

Monitorujte I / O disku pomocí iotopu v Linuxu

Monitorujte I / O disku pomocí iotopu v Linuxu
Na serverech Linux máte spuštěnou spoustu procesů a každý z těchto procesů provádí některé I / O operace. Tyto procesy tedy spotřebovávají šířku pásma úložného disku.

Můžeme použít příkaz htop k zobrazení seznamu všech běžících procesů našeho serveru Linux. Ale co když chceme sledovat, kolik šířky pásma disku každý z těchto procesů spotřebovává? Můžeme použít iotop.

iotop je interaktivní nástroj pro monitorování I / O v systému Linux, stejně jako htop. S iotopem můžete snadno sledovat využití šířky pásma disku pro čtení a zápis pro každý běh zpracovaný v Linuxu.

V tomto článku vám ukážu, jak nainstalovat iotop na populární distribuce Linuxu a jak používat iotop ke sledování využití šířky pásma disku při čtení a zápisu na běžící proces. Budu používat Ubuntu 18.04 LTS pro demonstraci, ale stejné příkazy by měly fungovat na všech moderních linuxových distribucích. Pojďme tedy začít.

Instalace iotop na Ubuntu:

iotop je k dispozici v oficiálním úložišti balíků Ubuntu. Iotop si tedy můžete snadno stáhnout pomocí správce balíčků APT.

Nejprve aktualizujte mezipaměť úložiště balíčků APT pomocí následujícího příkazu:

$ sudo apt aktualizace

Nyní nainstalujte iotop pomocí následujícího příkazu:

$ sudo apt install iotop

iotop by měl být nainstalován.

Nyní zkontrolujte, zda iotop pracuje pomocí následujícího příkazu:

$ iotop - verze

iotop funguje, jak vidíte.

Instalace iotop na CentOS 7:

iotop je k dispozici v oficiálním úložišti balíků CentOS 7. Můžete jej snadno nainstalovat pomocí správce balíčků YUM následujícím způsobem:

$ sudo yum install iotop -y

Základní použití iotopu:

Chcete-li monitorovat využití disku všech spuštěných procesů pomocí iotop, spusťte iotop následujícím způsobem:

$ sudo iotop

Jak vidíte, otevře se interaktivní okno iotop. Zde můžete vidět, který proces používá disk.

Jak vidíte na následujícím obrázku, v levé horní části se zobrazuje celková rychlost čtení / šířka pásma disku. Stejným způsobem je v pravé horní části zobrazena celková rychlost zápisu na disk / šířka pásma.

Jak vidíte, iotop zobrazuje sloupce pro,

Ve většině případů je ID vlákna (TID) ekvivalentní ID procesu (PID).

Zobrazení procesů provádějících pouze I / O operace:

Ve výchozím nastavení zobrazuje iotop všechny běžící procesy bez ohledu na to, zda provádějí I / O operace. Seznam je tedy velmi dlouhý. Je těžší najít procesy, které potřebujeme, a sledovat je.

Naštěstí vám iotop umožňuje zobrazit pouze procesy, které provádějí I / O operace. K tomu můžete použít nebo -pouze možnost iotop.

Chcete-li zobrazit pouze procesy provádějící I / O operace, spusťte iotop následujícím způsobem:

$ sudo iotop -o

Nebo

$ sudo iotop - pouze

Jak vidíte, proces s TID 1345 a 1957 právě teď provádí I / O operace.

Toto je příkaz, který používám k simulaci operací I / O v tomto článku.

$ dd if = / dev / urandom of = iotest.img bs = počet 1M = 1000

POZNÁMKA: Pokud jste nezačali iotop s nebo -pouze i nadále můžete přepnout do tohoto režimu stisknutím tlačítka Ó na klávesnici. Mezi těmito 2 režimy iotopu můžete přepínat pomocí Ó klíč.

Zobrazení celkového využití I / O na proces:

iotop také umožňuje sledovat, kolik disků načte a zapíše celkem, co každý proces udělal i po spuštění iotop. K tomu musíte použít -A nebo -nahromaděné volba. Můžete jej také použít s nebo -pouze také možnost.

Například,

$ sudo iotop -ao

Jak vidíte, zobrazí se celkový počet přečtených disků a zápisů na disk pro každý proces.

Zobrazení PID místo TID:

Jak jsem uvedl dříve, ID vlákna (TID) je po většinu času stejné jako ID procesu (PID). Můžete je použít zaměnitelně. Ale pokud si opravdu chcete být jisti, že pracujete s přesně ID procesu (PID), pak iotop má -P nebo -procesy možnost, kterou můžete použít ke změně výchozího sloupce TID na sloupec PID.

Chcete-li místo sloupce TID zobrazit sloupec PID, spusťte iotop následujícím způsobem:

$ sudo iotop -P

Nebo

$ sudo iotop - procesy

Jak vidíte, sloupec TID je nahrazen sloupcem PID.

Filtrování procesů iotop:

Procesy iotop můžete filtrovat na základě ID procesu (PID), ID vlákna (TID) a zpracovaného vlastníka (USER).

Například pokud chcete monitorovat I / O disku procesů pouze s PID 2024 a 2035, spustili byste iotop takto:

$ sudo iotop -P -p 2024 -p 2035

Jak vidíte, sledovány jsou pouze procesy s PID 2024 a 2035.

Pokud byste chtěli monitorovat I / O disku vláken pouze s TID 2024 a 2035, spustili byste iotop následovně:

$ sudo iotop -P -p 2024 -p 2035

Znovu řekněme, že chcete monitorovat I / O disku procesů spuštěných jako uživatel šovon. Chcete-li to provést, spusťte iotop následujícím způsobem:

$ sudo iotop -P -u shovon

Jak vidíte, pouze procesy běžící jako uživatel šovon je zobrazen.

Pokud chcete sledovat více uživatelů najednou, můžete to udělat také.

Například ke sledování I / O disků všech procesů, které uživatelé provádějí šovon a lilie běží, spusťte iotop následujícím způsobem:

$ sudo iotop -P -u shovon -u lily

Takže v zásadě používáte iotop ke sledování I / O disků v Linuxu. Děkujeme za přečtení tohoto článku.

Hry Porty komerčních her s otevřeným zdrojovým kódem
Porty komerčních her s otevřeným zdrojovým kódem
Zdarma, s otevřeným zdrojovým kódem a multiplatformní herní enginy lze hrát staré i některé z poměrně nedávných herních titulů. Tento článek uvede sez...
Hry Nejlepší hry z příkazového řádku pro Linux
Nejlepší hry z příkazového řádku pro Linux
Příkazový řádek není při používání Linuxu jen vaším největším spojencem - může být také zdrojem zábavy, protože jej můžete použít k hraní mnoha zábavn...
Hry Nejlepší aplikace pro mapování gamepadu pro Linux
Nejlepší aplikace pro mapování gamepadu pro Linux
Pokud rádi hrajete hry na Linuxu s gamepadem místo typického vstupního systému pro klávesnici a myš, máte k dispozici několik užitečných aplikací. Mno...