sourcejedi Asked: 2018-06-22 07:48:44 +0800 CST2018-06-22 07:48:44 +0800 CST 2018-06-22 07:48:44 +0800 CST 为什么 SaK 会杀死运行在不同 VT 上的 gdm? 772 我运行 Fedora Linux 28,并启用了 sysrq。我按下 Alt+PrtScr+K 以终止无响应的 X 会话。但这也重新启动gdm了,以及另一个在不同 VT 上运行的 X 会话。为什么? linux gdm 1 个回答 Voted Best Answer sourcejedi 2018-06-22T07:48:44+08:002018-06-22T07:48:44+08:00 Linux SaK 会杀死所有打开了当前 tty 的进程。 请参阅https://elixir.bootlin.com/linux/v4.17/source/drivers/tty/tty_io.c#L2700 systemd-logind 似乎打开了所有活动的 ttys。 您可以使用验证这一点lsof。 当 X 作为非特权用户运行并依赖于 systemd-logind 时,它不会处理 systemd-logind 的重启。当 X 失去与 systemd-logind 的连接时,它会自行终止。 选择 因此,如果您使用非特权 X 或 Wayland,SaK 可以间接影响所有 VT。 相反,您可以使用 Alt+PrtScr+R,然后使用 Ctrl+Alt+F6。您可以在文本控制台上登录,然后手动终止进程(例如Xorg,或者gnome-shell如果您使用 GNOME Wayland 会话)。
Linux SaK 会杀死所有打开了当前 tty 的进程。
请参阅https://elixir.bootlin.com/linux/v4.17/source/drivers/tty/tty_io.c#L2700
systemd-logind 似乎打开了所有活动的 ttys。
您可以使用验证这一点
lsof
。选择
因此,如果您使用非特权 X 或 Wayland,SaK 可以间接影响所有 VT。
相反,您可以使用 Alt+PrtScr+R,然后使用 Ctrl+Alt+F6。您可以在文本控制台上登录,然后手动终止进程(例如
Xorg
,或者gnome-shell
如果您使用 GNOME Wayland 会话)。