Alt+SysRq+T 不起作用/SysRq 命令打印到哪里?

Alt+SysRq+T 不起作用/SysRq 命令打印到哪里?

我的 REISUB 命令和 K 工作完美,但使用 T(它应该打印有关任务的信息)时,它什么也不打印。 H也不起作用。

Alt+SysRQ+H
Alt+SysRQ+T

我尝试了所有 tty(甚至 F10,它甚至没有登录提示),但没有任何结果。

像 K 这样的东西工作正常,它杀死了 xserver 和所有东西(很方便,因为它总是冻结)。

如何修复/它们真正打印到哪里?

我在阿奇。

答案1

默认的 Arch Kernel 应该在内核中启用 sysrq 功能(我使用的是自定义功能,但配置基于默认功能)。然而,在默认内核中,控制 sysrq 键的哪些功能可用的位掩码设置为0。我相信它被设置为16(10000)在 Arch 启动过程中的某个地方,但我不确定在哪里。

如果 sysrq 设置是在正在运行的内核中编译的,则可以通过以下方式轻松检查:

$ cat /proc/sys/kernel/sysrq 
16

在此示例中,它设置为 16(= 仅启用紧急同步)。

人们可以轻松启用所有 sysrq 功能:

$ echo 1 > /proc/sys/kernel/sysrq

您需要以 root 身份执行此操作,因为 echo 不能与 sudo 一起使用。或者:

$ echo 1 | sudo tee /proc/sys/kernel/sysrq > /dev/null 

(该> /dev/null部分不是严格需要的)

sysrq 配置在中进行了更详细的解释内核文档,甚至在维基百科

另外,如果问题确实是设置了位掩码以便禁用所需的组合,那么您应该在 syslog 中收到一条通知(至少我是这样做的):

kernel: SysRq : This sysrq operation is disabled.

答案2

来自 Arch Linux 的内核部分键盘快捷键维基页面

如果您希望在启动期间启用它,请编辑/etc/sysctl.d/99-sysctl.conf并插入文本kernel.sysrq = 1。如果您想确保在挂载分区之前以及在 initrd 中启用它,请添加sysrq_always_enabled=1到内核引导命令行选项。

相关内容