![SysRq는 터미널에 결과를 표시하지 않습니다.](https://linux55.com/image/159003/SysRq%EB%8A%94%20%ED%84%B0%EB%AF%B8%EB%84%90%EC%97%90%20%EA%B2%B0%EA%B3%BC%EB%A5%BC%20%ED%91%9C%EC%8B%9C%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
저는 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에 기록되는 콘솔 및 커널 메시지 버퍼의 메시지만 표시합니다. 이 도구도 사용할 수 있습니다 dmesg
.
커널에는 "현재 터미널"이라는 개념이 없으므로 원하는 것은 불가능합니다.