GNU/Linux >> Tutoriales Linux >  >> Linux

Ejemplos de comandos kill en Linux

Se utilizan diferentes comandos para enviar señales a los procesos para terminarlos o "matarlos". Esto es necesario cuando un proceso deja de responder (se bloquea), provoca inestabilidad en el sistema o no puede ceder el control sobre un archivo que intenta modificar.

Uso del número pid para finalizar procesos

Puede usar el comando matar con la tabla de procesos para finalizar procesos. Al ingresar kill seguido del PID, puede finalizar procesos específicos. Sin embargo, la tabla de procesos puede mostrar procesos que no le pertenecen. Como usuario, puede usar el comando kill solo con procesos de su propiedad. Como root, puede eliminar cualquier proceso.

Señales de matar

Hay muchas formas de matar un proceso, cada una asignada a una señal. Esta señal determina cómo matar el proceso. Algunas señales son más apropiadas que otras en ciertas situaciones. Por ejemplo, es posible que desee finalizar un proceso correctamente, dándole tiempo para limpiar las últimas actividades. Sin embargo, algunos procesos ignorarán esta señal o simplemente no terminarán en un período de tiempo razonable. Para eso, es posible que deba emitir una señal más agresiva.

Hay muchas señales de muerte diferentes. Cada señal tiene un nombre y uno o más valores numéricos correspondientes; puedes usar cualquiera con el comando matar. Algunas de las señales más comunes se describen a continuación:

1. SIGINT (2)
– Interrumpe el proceso desde la terminal.
– Se puede capturar o ignorar.
– Igual que presionar Ctrl+C

2. SIGKILL (9)
– Elimina el proceso inmediatamente.
– No se puede detectar ni ignorar.
– Último recurso.

3. SIGTERM (15)
– Finaliza el proceso.
– Puede detectarse o ignorarse.
– Enviado desde el programa y no desde la terminal.

4. SIGSTOP (17, 19, 23)
– Pausa el proceso.
– No se puede detectar ni ignorar.
– Enviado desde el programa y no desde el terminal.

5. SIGSTP (18, 20, 24)
– Pausa el proceso desde la terminal.
– Se puede capturar o ignorar.
– Igual que presionar Ctrl+Z.

Demostración de señales de muerte

Los siguientes son algunos ejemplos de implementación de señales de eliminación. Para finalizar correctamente un proceso con ID 921:

$ kill 15 921

En su defecto, para eliminar el proceso de inmediato:

$ kill 9 921

Alternativamente, para pausar en lugar de eliminar el proceso por completo:

$ kill 17 921

Ejemplos de comandos de matar

1. Para obtener la lista de señales:

# kill -l 
 1) SIGHUP	 2) SIGINT	     3) SIGQUIT	 4) SIGILL
 5) SIGTRAP	 6) SIGABRT	     7) SIGEMT	 8) SIGFPE
 9) SIGKILL	10) SIGBUS	    11) SIGSEGV	12) SIGSYS
13) SIGPIPE	14) SIGALRM	    15) SIGTERM	16) SIGURG
17) SIGSTOP	18) SIGTSTP	    19) SIGCONT	20) SIGCHLD
21) SIGTTIN	22) SIGTTOU	    23) SIGIO	24) SIGXCPU
25) SIGXFSZ	26) SIGVTALRM	27) SIGPROF	28) SIGWINCH
29) SIGINFO	30) SIGUSR1	    31) SIGUSR2

2. Para enviar una señal particular:

# kill -s 9 

3. Para especificar la lista de procesos para eliminar:

# kill 1234 2345 3456 

4. Termine un programa utilizando la señal SIGTERM (terminar) predeterminada:

# kill process_id

5. Terminar un trabajo en segundo plano:

# kill %job_id

6. Termine un programa utilizando la señal SIGHUP (colgar). Muchos demonios se recargarán en lugar de terminar:

# kill -1|HUP process_id

7. Termine un programa utilizando la señal SIGINT (interrupción). Esto normalmente lo inicia el usuario presionando `Ctrl + C`:

# kill -2|INT process_id

8. Señale al sistema operativo que finalice inmediatamente un programa (que no tiene posibilidad de capturar la señal):

# kill -9|KILL process_id

9. Señale al sistema operativo que pause un programa hasta que se reciba una señal SIGCONT ("continuar"):

# kill -17|STOP process_id

10. Envíe una señal `SIGUSR1` a todos los procesos con el GID dado (ID de grupo):

# kill -SIGUSR1 -group_id


Linux
  1. 7 ejemplos de comandos Linux df

  2. 8 ejemplos de comandos TR de Linux

  3. Ejemplos de comandos rm en Linux

  4. Ejemplos de comandos kill en Linux

  5. Ejemplos de comandos ps en Linux

Comando wc Linux con ejemplos

Comando matar en Linux

Comando Killall en Linux con ejemplos

5 formas rápidas de matar un proceso en Linux

Cómo MATAR un proceso en Linux

Ejemplos de comandos id en Linux