GNU/Linux >> Znalost Linux >  >> Linux

Jak zjistit využití procesoru, co způsobí, že se systém zasekne

Někdy se stane, že proces se zhroutí a vezme veškerý výpočetní výkon vašeho počítače. V jiných případech proces jednoduše přetíží systém. Je dokonce možné, že malware spotřebovává celý počítačový zdroj. Příkladem mohou být některé kryptoaplikace nebo bloatware. V tomto článku se podíváme na to, jak zjistit, které procesy zabírají nejvíce prostředků CPU a jak s nimi zacházet.

Jak najít procesy, které nejvíce využívají CPU?

První věc, kterou můžeme udělat, je použít vestavěný nástroj v Linuxu – top . S jeho pomocí můžeme vytvořit seznam procesů, které zabírají nejvíce zdrojů.

top -b -d 60 -n 5

Z tohoto příkladu můžeme najít 5 nejlepších procesů, které spotřebovávají náš CPU v tomto případě mysqld s PID 1961.

Dalším dobrým nástrojem je vmstat, který hlásí informace o procesech, paměti, stránkování, blokových IO, pastech a aktivitě CPU.

$ vmstat 1 100
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 288700  17592 1920048    0    0  4482  3297   47  155  8  2 78 12  0
 0  0      0 268420  17904 1920584    0    0   788    36 4095 4759 11  3 85  1  0
 0  0      0 269916  17940 1920868    0    0   108   560 6969 7280 11  2 86  1  1
 3  0      0 267684  18196 1921304    0    0   256     0 5934 6094  9  2 90  0  0
 0  0      0 257800  18196 1921528    0    0     0     0 5412 5508 10  1 89  0  1
 1  0      0 257368  18196 1922028    0    0     0     0 5852 6046  9  1 89  0  1
 0  0      0 256872  18200 1922236    0    0     0     0 5345 5566  9  1 90  0  0
 0  0      0 256688  18208 1922292    0    0     0  1788 5388 5602  7  2 90  1  1
 0  0      0 256520  18208 1922684    0    0     0     0 5387 5557  8  1 91  0  0
 1  0      0 255788  18208 1923024    0    0     0     0 4992 5363 10  1 89  0  1
 1  0      0 255392  18208 1923456    0    0     0     0 5027 5145 13  1 86  0  0
 0  0      0 254980  18208 1923792    0    0     0     0 5042 5082 21  1 77  0  1
 0  0      0 254452  18216 1924092    0    0     0  1848 5481 5695  7  1 91  1  1
 0  0      0 254416  18216 1924268    0    0     0     0 4947 5250  7  1 92  0  0
 1  0      0 253732  18216 1924616    0    0     0     0 5180 5383  8  2 90  0  1
 0  0      0 253584  18216 1924912    0    0    12     0 4464 4623  8  1 91  0  0
 0  0      0 243496  18216 1925224    0    0     0     0 5507 5700  9  1 90  0  1
 0  0      0 243008  18224 1925504    0    0     0  1356 5070 5345  8  1 90  0  1
 1  0      0 243220  18228 1925676    0    0     0     0 6241 6533 11  2 87  0  0

Co dělat s procesem, když ho najdu?

Každý případ je jiný, některé procesy lze restartovat, jiné zastavit a jiné vypnout. To, že proces zatěžuje systém, může vést k různým věcem, pokud jde například o databázi, budete muset investovat do výkonnějšího hardwaru. Pokud se proces zasekne, stačí jej restartovat a obecně jednat podle situace a o jaký proces se jedná.

Jak zabít proces?

# Kill the PID
kill 1961
Code language: PHP (php)

Jak zakázat službu?

sudo systemctl disable mysql.service
Code language: CSS (css)

Jak zastavit službu?

sudo systemctl stop mysql.service
Code language: CSS (css)

Závěr

V tomto článku jsme zkontrolovali procesy, které používají velké CPU, a ukázali, jak je zabít nebo zakázat. Pokud znáte další osvědčené postupy, sdělte nám je prosím v komentářích níže.

Doufáme, že se vám tento článek líbil. pokud je to tak, ohodnoťte tuto stránku níže uvedenými hvězdičkami a přihlaste se k odběru našeho kanálu YouTube nebo nás sledujte na twitteru.


Linux
  1. Jaká je aktuální úroveň běhu systému Linux?

  2. Jak najít příčinu posunu hodin na vlastním vestavěném systému?

  3. Jak zjistit, jaké další stroje jsou připojeny k místní síti?

  1. Jak zjistit počet soketů CPU v systému CentOS/RHEL

  2. Jak zjistím, co zabírá veškerý prostor na mém / oddílu?

  3. Jak zjistím, jaké pevné disky jsou v systému?

  1. Co dělá Linux udržitelným OS

  2. Jak změnit identitu systému Linux

  3. Jaký je rozdíl ve využití CPU mezi 'ps aux' a 'ps -ef'?