Kernel

SysRq 在終端上不顯示任何結果

  • August 15, 2019

我使用 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在目前終端上顯示結果?

核心只會在控制台和核心消息緩衝區中顯示消息,這些消息通常由 syslog 使用“核心”工具記錄,也可以使用dmesg.

核心沒有“目前終端”的概念,所以你想要的是不可能的。

引用自:https://unix.stackexchange.com/questions/535648