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

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

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

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

答案1

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

  • 命令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)打印包含进程标识符(PID)的列,然后可以使用sudo kill -9 <PID>

$ 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   # force kill the third session from the above list

此外,您还可以通过以下命令终止特定用户的所有进程:

sudo pkill -9 -u <username>

也可以看看:

相关内容