GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo puedo saber qué procesos están causando cargas elevadas si no son un uso elevado de la CPU?

Solución 1:

iostat puede reportar estadísticas como esa. Suele incluirse en tu distro en el paquete sysstat.

dstat también podría valer la pena, es un reemplazo moderno.

Solución 2:

Si tiene contabilidad IO en su kernel, entonces puede usar iotop para dar información como esa. Además, las herramientas de monitoreo como collectd pueden registrar e informar sobre los datos.

Solución 3:

Para encontrar lo que está causando una carga alta, puede verificar algunas cosas.

  • vmstat -w le mostrará ovierwiem (procesos, intercambio, mem, cpu, io, sistema)
  • pmstat -P ALL le proporcionará estadísticas (con %iowait) por núcleo de CPU
  • iostat -x busque un % de utilidad alto o una espera larga o un tamaño de cola promedio grande
    • cavar más profundo con iotop
  • ps -ax busque el estado D, que es el sueño ininterrumpido (generalmente IO), ejecútelo una vez más y verifique si todavía están en el estado D
    • cavar más profundo con strace
    • verificar archivos y conexiones de esos procesos con lsof y netstat
  • sar/sysstat:con esa herramienta puede explorar no solo las estadísticas "ahora", sino también verificar lo que sucedió ayer a la medianoche
    • sar -b - actividades generales de io
    • sar -d - actividades de io de dispositivo de bloque individual

Linux
  1. ¿Qué son los procesos zombis y cómo encontrar y eliminar procesos zombis?

  2. Cómo verificar el uso de intercambio de cada proceso en Linux

  3. ¿Cómo puedo comprobar que existe un archivo y ejecutar un comando si no es así?

  4. ¿Cómo puedo verificar si PostgreSQL está instalado o no a través de un script de Linux?

  5. Cómo encontrar qué proceso está causando un alto uso de la CPU

Cómo verificar si está en sesión de pantalla o no en Linux

¿Cómo puedo verificar si cgroups están disponibles en mi host Linux?

¿Cómo puedo averiguar qué discos duros están conectados a una caja de Linux?

VMware Linux Server:¿cómo puede saber si es una máquina virtual o un hardware real?

¿Hasta dónde puede llegar la carga del sistema?

¿Cómo puedo saber qué proceso está causando que kswapd esté en uso?