Inicio > Gestión de procesos > killall5

killall5: Enviar una señal a todos los procesos

killall5 es un comando que envía una señal especificada a todos los procesos del sistema (excepto al proceso init). Se utiliza principalmente para apagar o reiniciar el sistema y puede ser muy potente y peligroso, por lo que debe usarse con precaución.

Descripción general

killall5 envía una señal a todos los procesos en ejecución del sistema, excluyendo el proceso init. Este comando se utiliza principalmente durante los cambios de nivel de ejecución del sistema o durante el proceso de apagado. Es un comando muy potente, por lo que debe usarse con precaución, teniendo en cuenta que puede tener un impacto grave en el sistema.

Características principales

  • Envía señales a todos los procesos excepto al proceso init
  • Se utiliza principalmente para apagar, reiniciar y cambiar niveles de ejecución del sistema
  • Es muy potente y puede tener un impacto crítico en el sistema

Opciones principales

killall5 tiene un número relativamente pequeño de opciones.

Especificar señal

Excluir procesos

Comando generado:

Combina los comandos.

Descripción:

`killall5` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Varios ejemplos de uso del comando killall5. Este comando es muy potente, por lo que se debe tener precaución al usarlo en la práctica.

Enviar señal SIGTERM a todos los procesos (comportamiento predeterminado)

sudo killall5

Envía la señal SIGTERM (15) para solicitar la terminación de todos los procesos excepto el proceso init. Esto se puede usar para inducir un apagado normal del sistema.

Forzar la terminación de todos los procesos (SIGKILL)

sudo killall5 -9

Envía la señal SIGKILL (9) para forzar la terminación de todos los procesos excepto el proceso init. Esto se utiliza como último recurso cuando los procesos no responden a SIGTERM. Existe el riesgo de pérdida de datos.

Intentar terminar todos los procesos excluyendo un PID específico

sudo killall5 -o 1234

Envía la señal SIGTERM a todos los procesos, excluyendo el proceso con PID 1234. Puede ser útil cuando se necesita terminar todos los demás procesos manteniendo un proceso importante específico.

Enviar señal SIGHUP a todos los procesos

sudo killall5 -1

Envía la señal SIGHUP (1) a todos los procesos excepto al proceso init. Algunos demonios recargan su configuración al recibir SIGHUP.

Instalación

killall5 generalmente se proporciona como parte del paquete `sysvinit-utils` o `sysvinit-tools`. Está instalado por defecto en la mayoría de las distribuciones de Linux, pero si no está presente, puede instalarse usando los siguientes comandos.

Sistemas basados en Debian/Ubuntu

sudo apt update && sudo apt install sysvinit-utils

Sistemas basados en CentOS/RHEL/Fedora

sudo yum install sysvinit-tools
# o en versiones más recientes
sudo dnf install sysvinit-tools

Consejos y precauciones

killall5 es un comando potente que afecta a todo el sistema, por lo que se requiere especial precaución al usarlo.

Comando muy peligroso

Este comando puede terminar todos los procesos de usuario del sistema y, si se usa incorrectamente, puede hacer que el sistema se vuelva inestable o se reinicie. Debe evitarse en servidores donde se estén realizando tareas importantes.

  • **Riesgo de pérdida de datos**: Los datos no guardados pueden perderse al forzar la terminación.
  • **Inestabilidad del sistema**: Los servicios esenciales pueden terminar, lo que puede hacer que el sistema se bloquee.

Considerar comandos alternativos

Si necesita terminar solo un grupo de procesos específico o procesos de usuario, se recomienda usar comandos que ofrezcan un control más granular, como `killall` o `pkill`.

  • `killall <nombre_proceso>`: Termina todos los procesos con un nombre específico
  • `pkill <patrón>`: Termina los procesos que coinciden con un patrón
  • `kill <pid>`: Termina un proceso con un PID específico

Exclusión del proceso init

killall5 no envía señales al proceso init (o systemd) con PID 1. Esto es para proteger los procesos centrales del sistema.

Uso de sudo obligatorio

Para enviar señales a todos los procesos del sistema, se requieren privilegios de root, por lo que debe usarse con `sudo`.


Comandos de la misma categoría