在Linux中,魔术SysRq键可以直接发送命令到Linux内核。您可以使用它来恢复冻结或干净地重新启动系统,即使没有任何反应。
魔术SysRq键是作为Linux键盘驱动程序的一部分实现的 - 只要Linux内核仍在运行,它将会工作。只有内核崩溃才能禁用此组合键。
Image Credit1010mh1112 solylunafamilia on Flickr
使用Magic SysRq键
SysRq键位于键盘上的Scroll Lock键附近 - Sys Rq键与打印屏幕键大致相同。“魔术”SysRq组合是Alt SysRq。
要使用此组合键,您的Linux内核必须使用CONFIG_MAGIC_SYSRQ编译选项进行编译 - 大多数Linux发行版将默认启用。假设它被编译到内核中,可以通过更改/ proc / sys / kernel / sysrq的值来在运行的系统上启用或禁用它。要检查是否启用,请运行以下命令:
cat / proc / sys / kernel / sysrq
如果看到“1”,则启用魔术SysRq键。
如果你看到一个“0”,你必须通过以root:
运行以下命令来启用它
echo“1”有几个魔术SysRq命令可以帮助:
Alt SysRq r - 使键盘脱离原始模式,控制远离X服务器。运行此组合后,您应该可以使用Ctrl Alt F1(和其他F键)键盘快捷键切换到另一个控制台并重启X.Alt SysRq k - 杀死当前虚拟控制台上的所有程序,包括X.您还可以在Ubuntu的键盘首选项中启用Ctrl Alt Backspace键盘快捷方式来重新启动X服务器 - 但是,此快捷方式由X服务器实现,可能不会始终工作。清理系统重新启动
按顺序排列,其中一些操作可用于清理结束进程,将数据刷新到磁盘,卸载所有文件系统,然后重新启动计算机。要执行此过程,请按住Alt SysRq组合键,然后按住Alt和SysRq键以下是每个关键字的功能.:
r - 将键盘置于原始模式,将其从X服务器中控制。e - 向所有进程发送终止信号,要求它们优雅地结束。我 - 向所有进程发送杀戮信号,迫使他们立即结束。s - 将数据从缓存刷新到磁盘。u - 只读所有文件系统。b - 重新启动计算机。更多命令
还有一些其他可以用魔术SysRq键执行的动作。要执行操作,请按住Alt SysRq键,然后键入letter:
n - 重置所有高和实时优先级进程的优良级别(优先级)。f - 调用oom_kill,这将会杀死一个内存占用过程。o - 关闭电脑。
还有其他的动作,但对于开发人员而言,它们比普通的Linux极客更有用。有关魔术SysRq键的更多信息,以及您可以执行的完整操作列表,请参阅sysrq。txt文件随Linux内核一起提供。
."