Folyamatok figyelése top és htop paranccsal

Linux 2 perc olvasás

Ha a szerver lassan válaszol, az első kérdés mindig az, hogy mi terheli. A top és a htop parancs valós időben mutatja a futó folyamatokat, és azt, mennyi processzoridőt és memóriát használnak. Mindkettő hasznos egy elszabadult szkript, egy túl sok memóriát foglaló adatbázis vagy egy hirtelen megugrott látogatottság felderítésére.

A top parancs

A top szinte minden Linux rendszeren alapból elérhető. Indítsa el a terminálban:

top

A fejléc

A képernyő felső része összesített adatokat mutat:

  • load average: a rendszer terhelésátlaga az utolsó 1, 5 és 15 percben. Az értelmezéséről a Mit jelent a load Linuxokon? cikk szól.
  • %Cpu(s): a processzoridő megoszlása. Az us a felhasználói programok, az sy a kernel, az id a tétlen idő, a wa a lemezre várakozás, az st pedig VPS-en az az idő, amennyit a virtuális gép a fizikai processzorra várt.
  • MiB Mem és MiB Swap: az összes, a szabad, a használt és a gyorsítótárként (buff/cache) használt memória, illetve a swap.

A folyamatlista

Alatta a folyamatok listája látható, alapértelmezetten CPU-használat szerint rendezve. A legfontosabb oszlopok: PID (folyamatazonosító), USER (tulajdonos), RES (a ténylegesen használt fizikai memória), %CPU, %MEM, TIME+ (az összesen felhasznált processzoridő) és COMMAND.

Egy folyamat %CPU értéke 100% fölé is mehet: a 100% egy teljes processzormagnak felel meg, így egy négy magon futó folyamat akár 400%-ot is mutathat.

Hasznos billentyűk

  • P: rendezés CPU-használat szerint (alapértelmezett)
  • M: rendezés memóriahasználat szerint
  • 1: a processzormagok külön-külön
  • c: a teljes parancssor megjelenítése (például melyik PHP-szkript fut)
  • u: szűrés egy felhasználó folyamataira
  • k: folyamat leállítása a PID megadásával
  • q: kilépés

Szkriptben vagy naplózáshoz a top -b -n 1 | head -n 20 egyszeri pillanatképet ír ki a terminálba.

A htop parancs

A htop a top színes, áttekinthetőbb és kényelmesebben kezelhető változata. Nem mindenhol van telepítve:

# Debian, Ubuntu
sudo apt install htop

# AlmaLinux, Rocky Linux (a htop az EPEL tárolóban van)
sudo dnf install epel-release
sudo dnf install htop

A htop a magok terhelését és a memóriát sávokkal ábrázolja, egérrel is kezelhető, és a folyamatok a funkcióbillentyűkkel kezelhetők:

  • F3: keresés név szerint
  • F4: szűrés
  • F5: fanézet, amelyben a szülő- és gyermekfolyamatok kapcsolata is látszik
  • F6: rendezési szempont kiválasztása
  • F9: jelzés (signal) küldése a kijelölt folyamatnak, vagyis leállítás

A htop képernyőjének részletes magyarázatát, a többi billentyűt és az indítási kapcsolókat a htop telepítése és használata AlmaLinuxon cikk tartalmazza.

Folyamat leállítása

Leállításkor először a „kíméletes” SIGTERM jelzést (15) küldje, amely lehetőséget ad a programnak a szabályos leállásra. Csak ha erre nem reagál, használja a SIGKILL jelzést (9). Parancssorból: kill 12345, illetve végszükség esetén kill -9 12345. Rendszerszolgáltatásokat, például a webszervert vagy az adatbázist ne így, hanem a systemctl paranccsal indítsa újra.

Mire figyeljen?

Ha a memóriahasználat folyamatosan közel van a maximumhoz, és a swap is telik, a szervernek több memória kell, vagy egy folyamat szivárogtatja a memóriát. Ha a terhelés tartósan a forgalommal együtt nő, érdemes nagyobb KVM VPS-csomagra váltani. Megosztott cPanel tárhelyen a saját fiókja terhelését a CloudLinux erőforrás-használat oldalon követheti.

Vissza: Linux leírások (62)