有时您可能需要在Linux系统上终止多个用户会话,例如,您必须运行一个月的工作,所有用户都必须从系统中注销。另一个例子是,您在系统上观看了很多ssh会话,并想终止所有人。有几种方法可以实现此目的,我将一一展示给您,然后您可以选择一个适合您的需求。
查看活动的ssh会话 您可以通过在Linux上运行w命令来查看活动的ssh会话: [root@vps1001 ~]# w 00:34:21 up 48 days, 23:38, 4 users, load average: 0.79, 0.58, 0.56 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT magesh pts/0 192.168.1.101 19:47 4:45m 0.04s 0.00s sh /opt/scripts/disk-usage.sh renush pts/1 192.168.1.102 20:35 3:54m 2:23 0.00s sh bash thanis pts/2 192.168.1.103 00:27 5.00s 0.08s 0.04s ssh root pts/4 192.168.1.104 00:34 1.00s 0.02s 0.01s w
1、如何使用pkill命令在Linux上终止用户会话 您可以使用tty会话号直接终止特定的用户ssh会话,您可以从W命令输出中看到tty会话号。 就我而言,我要终止“magi”用户会话,该用户已通过pts/2连接到服务器,因此命令如下: # pkill -9 -t pts/2 您是否想了解tty和pts之间的区别?这是详细信息。 TTY:tty代表Teletypewriter,它可以通过键盘/鼠标直接连接到系统,也可以通过串行连接到设备(例如,系统上的控制台)。 PTS:pts代表伪终端从站,它是一个终端设备,由另一个程序(例如,到系统的ssh会话)仿真。 参考:pkill命令_Linux pkill命令使用详解:可以按照进程名杀死进程。
2、如何使用Killall命令终止Linux中的用户会话 您可以借助killall命令终止用户会话,就我而言,我是在“-u”开关的帮助下终止“magesh”用户会话的: # killall -u magesh 参考:killall命令_Linux killall命令使用详解:使用进程名称来杀死一组进程。
3、如何使用Kill命令在Linux上终止用户会话 或者,您可以使用kill命令终止用户会话,与上述两种方法相比,这需要一些额外的步骤,因为您无法直接终止它们。 首先从w命令输出中找到用户tty会话号: [root@vps1001 ~]# w 00:34:21 up 48 days, 23:38, 4 users, load average: 0.79, 0.58, 0.56 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT magesh pts/0 192.168.1.101 19:47 4:45m 0.04s 0.00s sh /opt/scripts/disk-usage.sh renush pts/1 192.168.1.102 20:35 3:54m 2:23 0.00s sh bash thanis pts/2 192.168.1.103 00:27 5.00s 0.08s 0.04s ssh root pts/4 192.168.1.104 00:34 1.00s 0.02s 0.01s w 有了它之后,使用PS命令找到相应的tty会话的PID: ps -ft [tty] [root@vps1001 ~]# ps -ft pts/4 UID PID PPID C STIME TTY TIME CMD root 155183 155092 0 00:34 pts/4 00:00:00 -bash root 163015 155183 0 00:35 pts/4 00:00:00 ps -ft pts/4 最后终止会话的进程ID: kill -9 PID # kill -9 155183 参考:kill命令_Linux kill命令使用详解:删除执行中的程序或工作。
相关主题 |