SysRq 不在终端上显示任何结果

SysRq 不在终端上显示任何结果

我使用 Mint 19.2,并尝试通过以下过程查看 CPU 回溯。

    $ sudo -s
    # sysctl -w kernel.sysrq=1
    # echo l > /proc/sysrq-trigger

但是,什么也没发生。我在网上进行了更多研究,并尝试了以下输入键检查,命令的响应是这样的。

    # dmesg | grep -i sysrq
    [18494.528450] sysrq: SysRq : Show backtrace of all active CPUs
    [18494.528496]  sysrq_handle_showallcpus+0x17/0x20
    [18494.528499]  __handle_sysrq+0x9f/0x170
    [18494.528502]  sysrq_filter+0x98/0x3e0

即使我尝试了echo h > /proc/sysrq-trigger,结果也不会显示。但是,dmesg | grep -i sysrq回复道:

[21964.365327] sysrq: SysRq : HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems(j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r) sync(s) show-task-states(t) unmount(u) force-fb(V) show-blocked-tasks(w) dump-ftrace-buffer(z)
enter code here

通过这些dmesg响应,我相信操作系统至少将echo命令中的字母识别为 SysRq 输入。

如何让操作系统echo l > /proc/sysrq-trigger在当前终端上显示结果?

答案1

内核只会在控制台和内核消息缓冲区中显示消息,这些消息通常由 syslog 使用“kernel”工具记录,也可以使用dmesg.

内核没有“当前终端”的概念,所以你想要的东西是不可能的。

相关内容