Sobes.tech
Middle+

¿Cómo matar un proceso en Linux? ¿Qué hacer si kill pid no funciona?

sobes.tech AI

Respuesta de la IA

En Linux, un proceso se puede terminar usando el comando kill y especificando el PID (identificador del proceso):

kill <pid>

Por defecto, se envía la señal SIGTERM (15), que termina el proceso de manera correcta.

Si el proceso no responde a SIGTERM, se puede enviar una señal más fuerte, SIGKILL (9), que termina el proceso de forma forzada:

kill -9 <pid>

Si incluso kill -9 no funciona, es posible que el proceso esté en estado "D" (sueño ininterrumpible), por ejemplo, esperando entrada/salida o bloqueado a nivel del núcleo. En este caso, no se puede matar el proceso hasta que finalice la llamada al sistema o se libere el recurso.

Para diagnosticar, se puede usar:

  • ps aux | grep <pid> — para ver el estado del proceso (columna STAT)
  • top o htop — para monitorear procesos
  • strace -p <pid> — para rastrear las llamadas al sistema del proceso

Si el proceso está colgado debido a problemas de hardware o del sistema de archivos, se debe resolver el problema en ese nivel.