Estoy aprendiendo CentOS / RHEL y actualmente estoy haciendo algunas cosas sobre la gestión de procesos.
El libro de RHCSA que estoy leyendo describe la ejecución kill 1234
como envío de SIGQUIT. Siempre pensé que el comando kill sin agregar un interruptor para el tipo de señal debería ser predeterminadokill -15
SIGTERM es kill -15
y SIGKILL es kill -9
, ¿verdad?
¿CentOS / RHEL utiliza un método ligeramente diferente kill -15
o simplemente me he equivocado?
EDITAR: kill -l
proporciona SIGQUIT como kill -3
y parece estar asociado con el uso del teclado para finalizar un proceso. man 7 signal
también indica que SIGQUIT es kill -3
, por lo que solo puedo suponer que mi libro está equivocado al afirmar que SIGQUIT es kill -15
predeterminado.
fuente
Hay dos comandos kill, uno en procps y otro en shell. Ambos usan SIGTERM como predeterminado. Para procps kill, la ayuda de comandos, la página de manual y la fuente de kill (skill.c línea 724 en la última rama maestra) dicen SIGTERM, lo cual es bueno saber que es consistente.
Una cosa para recordar acerca de las señales es que una vez que comienzas a pasar el "grupo habitual" y usas sistemas un poco más diferentes a un sistema Linux x86, puedes encontrar que las señales no están allí o tienen números diferentes. procps (y probablemente muchos otros programas) hornea los números en tiempo de compilación (esencialmente lo que sea que tenga el archivo de inclusión, busque signum.h).
No es algo de qué preocuparse para SIGTERM, como dice @ilkkachu, está en POSIX.
fuente