如何获取活动登录会话列表?

11月17日17:55:46 swi007 systemd-logind [927]:用户swi007的新会话27。

我想在ubuntu服务器中看到活动登录会话列表,并希望关闭我服务器中的特定会话。

以下是获取当前会话列表的几种方法:

  • 命令who – 显示系统中的人员:

     $ 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) 
  • 命令w – 显示有关机器上当前用户的信息:

     $ 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 
  • 命令last lastb – 显示上次登录用户的(历史)列表。 它提供了很少的分析选项--until , – --since等。

  • 命令users – 打印当前登录到当前主机的用户的用户名。 它的使用非常有限:

     $ users guest spas spas 

要杀死特定会话,您可以使用who -u (或who -a )来打印进程号,然后使用sudo kill -9

 $ 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 

此外,您可以杀死特定用户的所有进程( 引用 ):

 sudo pkill -9 -u  

也可以看看:

  • 如何找到以root身份登录的用户?

  • 如何列出没有重复项的登录用户?