1.内核配置选项中要使能CONFIG_MAGIC_SYSRQ
选项,这样系统启动之后,会生成/proc/sysrq-trigger节点用于调试。
2.可以在/etc/sysctl.conf
中设置kernel.sysrq=1
默认使能sysq功能。也可以通过写/proc/sys/kernel/sysrq
节点动态使能sysrq功能。写入不同的值使能不同的功能:
-
0 - disable sysrq completely
-
1 - enable all functions of sysrq
-
2 - enable control of console logging level
-
4 - enable control of keyboard (SAK, unraw)
-
8 - enable debugging dumps of processes etc.
-
16 - enable sync command
-
32 - enable remount read-only
-
64 - enable signalling of processes (term, kill, oom-kill)
-
128- allow reboot/poweroff
-
256- allow nicing of all RT tasks
3.sysrq-trigger使用说明
#1. 导出内存分配信息
$ echo m > /proc/sysrq-trigger
#2. 导出当前任务状态信息
$ echo t > /proc/sysrq-trigger
#3. 导出当前CPU寄存器和标志位信息
$ echo p > /proc/sysrq-trigger
#4. 产生空指针panic事件,人为导致系统崩溃
$ echo c > /proc/sysrq-trigger
#5. 即时同步所有挂载的文件系统
$ echo s > /proc/sysrq-trigger
#6. 即时重新挂载所有的文件系统为只读
$ echo u > /proc/sysrq-trigger
#7. 转储处于uninterruptable阻塞状态的任务
$ echo w > /proc/sysrq-trigger