如何踢出已登录Linux服务器系统的用户

在Linux服务器系统管理员运维操作中,他们有时候需要将用户踢出系统。通常是因为用户离开了一个打开的会话,而您想重新引导系统或进行其他维护。在本文中,我们将讨论强制将用户踢出系统的步骤。
查找已登录用户的列表
您可以使用“ who”命令查找当前登录到系统的用户列表。使用-u(–users)选项还将显示用户shell会话的PID(进程ID)。
$ who -u

让我们踢掉 "stacy "这个用户,这样我们就可以完成我们的维护了。
向用户发出即将断开连接的警告。
在执行重启或断开连接之前,最好是先警告用户即将断开。如果用户正在做一些恶意的事情或者以某种方式滥用系统,那么无论如何都要在没有警告的情况下踢掉他们。
当我们运行who命令时,它向我们显示了用户连接到哪个pts(伪终端)。我们可以通过使用echo命令并将其管道化到write命令,在他们的终端上显示一条信息。

你可以把消息做成任何你喜欢的样子。给用户一些时间来保存自己的作品并注销,这是基本的礼仪。
结束用户Shell进程
当你准备好踢用户时,向用户的shell进程发送SIGHUP信号。SIGHUP信号与控制终端关闭时进程收到的信号相同。
sudo kill -HUP 9940
上面命令末尾的数字就是用户shell的进程ID。我们用上面的who命令找到进程ID。
有时会有一个挂起的过程。在这种情况下,我们可以将SIGKILL(kill-9)发送给PID。它将立即终止任何进程,因此请谨慎操作。
sudo kill -9 9940
我喜欢用pkill命令向所有用户进程发送SIGHUP。pkill命令是kill的封装器,允许用名字而不是PID(进程ID)来表示一个进程。
sudo pkill -HUP -u stacy
至此,你现在应该知道如何断开用户与Linux服务器系统的连接了。



