GNU/Linux >> Tutoriales Linux >  >> Linux

Elimine todos los procesos de un usuario específico a través de SSH

Hay momentos en los que desea eliminar todos los procesos para un usuario específico. Esto se puede hacer usando los comandos de shell pkill y matar a todos .

Para ver las diferencias entre el comando pkill y killall, consulte las páginas de ayuda que se enumeran al final de esta publicación.

Entonces, para eliminar todos los procesos de un usuario, use

pkill -u username

La sintaxis de uso es:

root@web [~]# pkill -h

Usage:
 pkill [options] 

Options:
 -<sig>, --signal <sig>    signal to send (either number or name)
 -e, --echo                display what is killed
 -c, --count               count of matching processes
 -f, --full                use full process name to match
 -g, --pgroup <PGID,...>   match listed process group IDs
 -G, --group <GID,...>     match real group IDs
 -n, --newest              select most recently started
 -o, --oldest              select least recently started
 -P, --parent <PPID,...>   match only child processes of the given parent
 -s, --session <SID,...>   match session IDs
 -t, --terminal <tty,...>  match by controlling terminal
 -u, --euid <ID,...>       match by effective IDs
 -U, --uid <ID,...>        match by real IDs
 -x, --exact               match exactly with the command name
 -F, --pidfile <file>      read PIDs from file
 -L, --logpidfile          fail if PID file is not locked
 --ns <PID>>               match the processes that belong to the same
                           namespace as 
 --nslist <ns,...>         list which namespaces will be considered for
                           the --ns option.
                           Available namespaces: ipc, mnt, net, pid, user, uts

 -h, --help     display this help and exit
 -V, --version  output version information and exit

Con el killall herramienta, el comando de shell es similar:

killall -u username

La sintaxis de uso es:

root@web [~]# killall -h
Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...
       killall -l, --list
       killall -V, --version

  -e,--exact          require exact match for very long names
  -I,--ignore-case    case insensitive process name match
  -g,--process-group  kill process group instead of process
  -y,--younger-than   kill processes younger than TIME
  -o,--older-than     kill processes older than TIME
  -i,--interactive    ask for confirmation before killing
  -l,--list           list all known signal names
  -q,--quiet          don't print complaints
  -r,--regexp         interpret NAME as an extended regular expression
  -s,--signal SIGNAL  send this signal instead of SIGTERM
  -u,--user USER      kill only process(es) running as USER
  -v,--verbose        report if the signal was successfully sent
  -V,--version        display version information
  -w,--wait           wait for processes to die
  -Z,--context REGEXP kill only process(es) having context
                      (must precede other arguments)

Recursos:
https://linux.die.net/man/1/pkill
https://linux.die.net/man/1/killall


Linux
  1. ¿Cómo matar todos los procesos aparte de uno específico?

  2. ¿Cómo encontrar todos los archivos propiedad de un usuario específico en Unix/Linux?

  3. Deshabilite el inicio de sesión raíz directo y el acceso de usuario a través de SSH al servidor

  4. ¿Cómo matar todos los procesos con un nombre parcial dado?

  5. Cómo eliminar todos los procesos de PHP-FPM en una sola línea de comando

Deshabilitar la autenticación de contraseña SSH para un usuario o grupo específico

Cómo deshabilitar el inicio de sesión SSH para un usuario específico en Linux

Matar todos los procesos relacionados con una aplicación

Limite el acceso SSH a clientes específicos por dirección IP

¿Cómo encuentro todos los archivos y directorios en los que puede escribir un usuario específico?

Elimine todos los procesos que se ejecutan durante más de 5 minutos por un usuario determinado en el script bash de Linux