Comando killall en Linux: Terminar Procesos por Nombre en la Terminal
El Comando killall en Linux envía señales a los procesos y recibe como parámetro no el PID del proceso, sino su nombre. Se usa generalmente para terminar la ejecución de procesos que tienen varios procesos hijos ejecutándose al mismo tiempo.
Si no se pasa ninguna señal específica como parámetro, killall enviará la señal TERM (15) para terminar el proceso de forma elegante.
En este ejemplo, killall fuerza al servidor web identificado por el nombre httpd, correspondiente a los procesos 1952, 1953 y 1954, a leer nuevamente su archivo de configuración:
$ ps aux | grep httpdwwwrun 1952 0.0 1.7 93232 2248 ? S 16:15 0:00 /usr/sbin/httpd -f /etc/httpd/httpd.confwwwrun 1953 0.0 1.7 93232 2248 ? S 16:15 0:00 /usr/sbin/httpd -f /etc/httpd/httpd.confwwwrun 1954 0.0 1.7 93232 2248 ? S 16:15 0:00 /usr/sbin/httpd -f /etc/httpd/httpd.conf# killall –HUP httpd
Para terminar de forma abrupta el servicio web abortando todos los procesos httpd:
# killall –9 httpd
Diferencia entre kill y killall
Es importante que entiendas la diferencia entre los comandos kill y killall. El primero envía señales a uno o más procesos identificados por el PID. El segundo envía señales a todos los procesos en la cola de ejecución que tienen un nombre determinado.
Las señales enviadas por kill y por killall pueden pasarse por el nombre o por el número entero correspondiente.
El comando killall es muy parecido al comando pgrep.
Aprende mucho más sobre Linux en nuestro curso en línea. Puedes realizar la inscripción aquí. Si ya tienes una cuenta, o quieres crear una, simplemente ingresa o crea tu usuario aquí.
¿Te gustó? Comparte
Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.