¿Cómo obtengo la lista de las sesiones de inicio de sesión activas?

16

9 de noviembre 17:55:46 swi007 systemd-logind [927]: Nueva sesión 27 del usuario swi007.

Quiero ver la lista de sesiones de inicio de sesión activas en el servidor ubuntu y me gustaría cerrar la sesión específica en mi servidor.

zapoxkrishna
fuente

Respuestas:

29

Aquí hay algunas alternativas para obtener la lista de la sesión actual:

  • El comando who: muestra quién está en el sistema:

    $ who
    spas     pts/1        2017-11-05 21:43 (tmux(1597).%0)
    spas     pts/14       2017-11-09 13:02 (192.168.100.110)
    guest    tty2         2017-11-09 16:15 (:1)
  • El comando w: muestra información sobre los usuarios que se encuentran actualmente en la máquina:

    $ w
     16:16:12 up 3 days, 18:33,  9 users,  load average: 4,33, 2,79, 2,44
    USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
    spas     pts/1    tmux(1597).%0    нд21    3days  3days  3days tmux new-session -d -s my-tmux-session
    spas     pts/14   192.168.100.110  13:02    1.00s  0.29s  0.01s sshd: spas [priv]
    guest    tty2     :1               16:15    3days  1.27s  0.17s /sbin/upstart --user
  • El comando last lastb: muestra una lista (historial) de los últimos usuarios registrados. Se ofrece pocas opciones de análisis como --until, --since, etc.

  • El comando users: imprime los nombres de usuario de los usuarios actualmente conectados al host actual. Tiene un uso realmente limitado:

    $ users
    guest spas spas

Para matar una sesión específica, puede usar who -u(o who -a) para imprimir los números de proceso y luego sudo kill -9 <session-process-number>:

$ who -u
spas     pts/1        2017-11-05 21:43  old         1597 (tmux(1597).%0)
spas     pts/14       2017-11-09 13:02   .         31822 (192.168.100.110)
guest    tty2         2017-11-09 16:15  old         2225 (:1)

$ sudo kill -9 2225   # this command will kill the third session from the above list

Además, puede eliminar todos los procesos de un usuario específico ( referencia ):

sudo pkill -9 -u <username>

Ver también:

pa4080
fuente
cómo matar una sesión específica
zapoxkrishna
@zapoxkrishna, revisa la actualización.
pa4080
te perdiste el lastcomando que también enumera todas las sesiones activas :)
Videonauth
¡Gracias, @Videonauth! De hecho, nunca he usado este comando. He actualizado la respuesta.
pa4080