GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso sapere quali processi stanno causando carichi elevati se non sono un utilizzo elevato della CPU?

Soluzione 1:

iostat può riportare statistiche del genere. Solitamente incluso nella tua distribuzione nel pacchetto sysstat.

Potrebbe anche valere la pena dare un'occhiata a dstat, è un sostituto moderno.

Soluzione 2:

Se hai account IO nel tuo kernel, allora puoi usare iotop dare informazioni del genere. Inoltre, strumenti di monitoraggio come collectd possono registrare e riferire sui dati.

Soluzione 3:

Per scoprire cosa sta causando un carico elevato puoi controllare alcune cose.

  • vmstat -w ti mostrerà ovierwiem (processi, swap, mem, cpu, io, sistema)
  • pmstat -P ALL ti fornirà statistiche (con %iowait) per core della CPU
  • iostat -x cerca un %util elevato o una lunga attesa o una dimensione media della coda grande
    • scava più a fondo con iotop
  • ps -ax cerca lo stato D che è il sonno ininterrotto (di solito IO), eseguilo ancora una volta controlla se sono ancora nello stato D
    • scava più a fondo con strace
    • controlla i file e le connessioni di quei processi con lsof e netstat
  • sar/sysstat - con questo strumento puoi esplorare non solo le statistiche "ora", ma anche controllare cosa è successo ieri a mezzanotte
    • sar -b - attività complessive io
    • sar -d - singole attività io del dispositivo a blocchi

Linux
  1. Come scoprire chi è connesso al tuo sistema e cosa stanno facendo

  2. Come posso sapere se mi trovo su uno schermo?

  3. Come trovare quale processo sta causando un elevato utilizzo della CPU

  4. Come posso verificare quali definizioni di terminale sono disponibili?

  5. Come posso verificare se i cgroup sono disponibili sul mio host Linux?

Cosa sono i processi zombi e come trovare e uccidere i processi zombi?

Come verificare se sei nella sessione dello schermo o meno in Linux

Come posso sapere quale versione di Linux sto usando?

Come posso sapere in quale limite di utenti mi sto imbattendo?

Come posso scoprire quali dischi rigidi sono collegati a una macchina Linux?

A quanto può arrivare il carico di sistema?