如何终止无响应的 Linux 会话

使用 Linux 终端时,有时会卡住,失去响应,这时应该如何终止会话? 对于Linux用户来说,遇到卡住或不想要的用户会话可能是一种令人沮丧的体验。同时,这些会话可能会使您的系统面临潜在风险,使其容易受到未经授权的访问或数据泄露的影响。 无论是由行为不端的应用程序、系统故障还是用户错误引起的,这些延迟的会话都会阻碍生产力,并危及系统的安全性和性能。 但不要害怕;本文旨在为您提供重新获得控制权和维护平稳运行的Linux系统的知识和工具。通过学习处理这些情况的正确方法,您可以确保一个更安全的计算环境,并保护您的宝贵数据。 然而,在我们继续之前,我们需要澄清两个术语 TTY 和 PTS 的含义,它们在 Linux 中直接涉及到终止用户会话。 在Linux中什么是 TTY 和 PTS? 在Linux中,“PTS”和“TTY”都指用于在用户和操作系统之间进行通信的不同终端设备。它们充当输入命令和接收系统输出的接口。 TTY (Teletype) “TTY”最初代表电传打字机(Teletype),这是一种类似打字机的设备,在计算机早期用于输入和输出。 在现代 Linux 系统中,TTY 代表一个物理或虚拟控制台,用户可以在此处直接与系统互动。 PTS (Pseudo-Terminal Slave) PTS代表伪终端从设备。它是一个虚拟终端,模拟硬件终端,但不直接连接到任何物理设备。 相反,系统创建并管理它,以支持终端多路复用、远程登录和各种交互式应用程序。 例如,当您使用终端模拟器应用程序(如GNOME的终端或KDE的Konsole)来访问Linux系统时,通常会使用伪终端。 这些仿真器充当伪终端的“主”端,而shell或在终端中运行的进程充当“从”端。 当您打开多个终端窗口或选项卡时,每个窗口或选项卡对应一个单独的PTS。例如,如果打开三个终端窗口,它们可能被标识为/dev/pts/0、/dev/pts/1和/dev/pts/2。 总之,TTY和PTS都是Linux中的终端设备,允许用户与操作系统交互。TTY表示物理或虚拟控制台,而PTS用于终端模拟器,并提供多路复用和远程登录的附加功能。 有了这样的澄清,我们现在可以继续讨论主要议题。 如何在Linux中终止阻塞/不需要的用户会话 阻塞我们一般俗称“卡住” 😆 你可以通过两种方式来实现这一点,因此我们将在下面分别进行研究。 通过 TTY 终止用户会话 我们将使用 w 命令来获取有关我们 Linux 系统上已登录用户的信息。它显示了当前登录用户的信息和他们的活动。 当你运行 w 命令时,它会为每个用户提供以下细节的摘要: USER: 当前登录用户的用户名 TTY: 与用户会话相关联的终端名称或设备(例如/dev/tty1,pts/0) FROM: 用户登录的远程主机或IP地址。如果用户在本地登录,它将显示 TTY’s name 或者 - 符号 LOGIN@: 用户登录的日期和时间 IDLE: 用户会话处于非活动状态的持续时间。如果用户主动使用终端,它将显示 old JCPU: 与用户会话相关联的所有进程使用的CPU总时间 PCPU: 用户当前进程使用的CPU时间. WHAT: 用户执行的命令或与终端相关联的进程 以下是 w 命令的输出示例: ...

September 9, 2023