有时,我的笔记本电脑卡住了,所以我使用Alt++的SysRq神奇组合键REISUB来执行安全重启。但是,它似乎对我不起作用,因为当我按下B键完成魔术键命令时,它只是说“重置......”并且什么都不做。
所有其他键似乎都可以正常工作,因为它会重置键盘布局、终止所有任务等,但似乎无法通过重新启动完成。
我的印象是我的笔记本电脑应该在按 REISUB 的顺序全部按下魔法键后重新启动。
有时,我的笔记本电脑卡住了,所以我使用Alt++的SysRq神奇组合键REISUB来执行安全重启。但是,它似乎对我不起作用,因为当我按下B键完成魔术键命令时,它只是说“重置......”并且什么都不做。
所有其他键似乎都可以正常工作,因为它会重置键盘布局、终止所有任务等,但似乎无法通过重新启动完成。
我的印象是我的笔记本电脑应该在按 REISUB 的顺序全部按下魔法键后重新启动。
Alt+SysRq 已被禁用以修复错误。禁用 Magic-SysRq 本身被认为是一个错误,此后它已被重新启用 ( #1025467 )。如果它仍然为您禁用,您可以重新启用它:
Ubuntu 12.04 及更早版本
编辑文件/etc/sysctl.conf以包含该行
Ubuntu 12.10 及更新版本
从 Ubuntu 12.10 开始,可以更细粒度地控制启用了哪些 Magic-SysRq 功能。只需编辑文件/etc/sysctl.d/10-magic-sysrq.conf。
该文件有据可查,并准确告诉您如何启用哪些功能。当前默认值是出于安全目的而选择的,只有在您知道为什么需要时才应更改(有关安全隐患,请参见#194676)。
键盘是这里的问题!
提示:尝试点击Shift++以在虚拟终端上查看“帮助”输出。这对于查看它是否正常工作而不会造成任何伤害很有用:AltSysRq
在所有情况下,我都遇到过它不起作用,交换键盘效果很好,表明任何内核设置都没有问题。
ATTRIBUTIONS :
https://fedoraproject.org/wiki/QA/Sysrq#How_do_I_use_the_magic_SysRq_key它基于 由 Mydraal 撰写的
Credits的原始作品 由 Adam Sulmicki 更新 由 Jeremy M. Dolan 更新 2001/01/28 10:15:59 添加通过 Crutcher Dunnavant
https://askubuntu.com/a/11194/102029 mneiss 提供了 LaunchPad 的链接。
内容
什么是 sysrq?
为什么 RESIUB(O) 不起作用?
1 如何让 sysrq 以我想要的方式行事?
1.1什么是神奇的 SysRq 密钥?
1.2如何启用神奇的 SysRq 密钥?
1.3如何使用神奇的 SysRq 密钥?
1.4什么是“命令”键?
1.5好的,那我可以用它们做什么?
1.6 故障排除
1.6.1 initscripts 运行前挂起
1.6.2有时 SysRq 在使用后似乎“卡住”了,我该怎么办?
1.6.3我点击了 SysRq,但似乎什么也没发生,怎么了?
1.6.4我想给一个模块添加SysRQ按键事件,它是如何工作的?
1.6.5结论
1.6.6附录
注。
您可能会发现使用Ctrl+F来使用目录很有帮助。
什么是 SysRq?
在机器冻结或锁定后重新使用机器并限制磁盘损坏导致系统文件损坏或数据丢失的风险的一种常见的众所周知和使用的方法是使用
Alt++然后然后再然后再然后SysRq和/或如果需要 ( ) rseiubo
从 >= 8.04LTS 到当前的 13.04 版本,对于许多人(即我自己和 James)来说,这并没有像预期的那样工作。
为什么 RESIUB(O) 不起作用?
考虑在LaunchPad Bug 194676中发现的这个错误描述:
Ubuntu 开发人员认为需要对此做一些事情,考虑到上述观察可能带来的复杂性,最佳解决方案是默认应用位掩码 176 sysrq,从而需要用户输入以根据需要设置 sysrq。位掩码 176 只允许S, U,B即同步、重新挂载已安装的分区并重新启动。
阅读完整的错误报告和评论将突出显示可能适用于您的系统的一些选项。
不同硬件、内核、键盘和位掩码的累积影响意味着 sysrq 对于不同的人表现不同。
获取有关系统如何使用 sysrq 的 txt 输出的一种方法是从 tty 应用 sysrq 命令(当系统没有遭受锁定/冻结时)。这样做可能表明 sysrq 尚未完全禁用,但正在使用位掩码 176。
在 13.04 Desktop amd64 liveDVD 和 13.04 Desktop amd64 安装上搜索 /proc/sys/kernel/sysrq 可确认当前默认将 sysrq 保留为位掩码 176。
如果 sysrq 对你有用;可能值得一问,“如果我没有更改 10-magic-sysrq 设置,那么是谁做的。?”
1 如何让 sysrq 以我想要的方式行事?
以下是https://fedoraproject.org/wiki/QA/Sysrq的编辑副本和粘贴。
1.1 什么是神奇的 SysRq 密钥?
这是一个“神奇”的组合键,你可以点击它,无论它在做什么,内核都会响应它,除非它被完全锁定。
1.2 如何启用神奇的 SysRq 密钥?
sysrq 内置在 Ubuntu 内核中,但在启动时默认使用 10-magic-sysrq.conf 禁用。
要在启动时重新启用它,您必须编辑 /etc/sysctl.d/10-magic-sysrq.conf 文件。即取消注释此行将启用 sysrq 的所有功能:
当运行一个编译了 SysRq 的内核时,/proc/sys/kernel/sysrq 控制允许通过 SysRq 键调用的函数。以下是 /proc/sys/kernel/sysrq 中可能值的列表:
您可以通过以下命令设置文件中的值。
所以要完全启用它。
或者也可以通过做来启用它。
笔记。
/proc/sys/kernel/sysrq 的值仅影响通过键盘的调用。始终允许通过 /proc/sysrq-trigger 调用任何操作(由具有管理员权限的用户 - 见下文)。
1.3 如何使用神奇的 SysRq 密钥?
Ubuntu 桌面
你按下组合键Alt+ SysRq+ command key。
注意- 请参阅本节和故障排除部分中的注释,了解其他系统和键盘的其他可能默认设置。
可以设置您选择的任何字符:所有架构
向 /proc/sysrq-trigger 写入一个字符:
会将T行为设置为SysRq
Note。
某些键盘可能没有标有 的键SysRq。SysRq钥匙也称为Print Screen钥匙。此外,有些键盘无法处理同时按下这么多键,所以你可能有更好的运气Alt+ SysRq-SysRq然后按下command key然后释放所有内容。有关这方面的更多信息,请参阅本指南基于https://fedoraproject.org/wiki/QA/Sysrq#How_do_I_use_the_magic_SysRq_key.3F的 QA 的完整写作。
1.4 什么是“命令”键?
笔记。
请参阅下面 SAK 部分的重要评论。
1.5 好的,那我可以用它们做什么?
当您的 X 服务器或 svgalib 程序崩溃时, Un raw 非常方便。
Sa k(安全访问密钥)在您想确保没有在控制台上运行的木马程序可以在您尝试登录时获取您的密码时很有用。它将杀死给定控制台上的所有程序,从而让您确保您看到的登录提示实际上是来自 init 的提示,而不是某些木马程序。其他人发现它作为(系统注意键)很有用,当您想要退出不会让您切换控制台的程序时很有用。(例如,X 或 svgalib 程序。)
注意。
就其真实形式而言,它不像符合 c2 的系统中的那样是真正的 SAK,因此不应被误解。
b当您无法关闭时,Re oot 很好。
笔记。首先安装
通常被认为是一种好习惯u
Crashdump 可用于c在系统挂起时手动触发 rashdump。
笔记。
内核需要在启用 CONFIG_KEXEC 的情况下构建!
当您的系统被锁定时,同步非常棒,它允许您s同步您的磁盘,并且肯定会减少数据丢失和 fscking 的机会。
警告
在您看到屏幕上出现“确定”和“完成”之前,同步尚未进行。(如果内核真的有冲突,你可能永远不会收到 OK 或 Done 消息。
Umount 基本上和Sync 一样有用。
当您的控制台被您不想看到的内核消息淹没时,日志级别非常0有用。9选择0将阻止除最紧急的内核消息之外的所有消息到达您的控制台。
笔记。
如果 syslogd/klogd 处于活动状态,它们仍将被记录
如果您有某种无法以其他方式杀死的失控进程,特别是如果它正在生成其他进程,则T erm 和 k ll 很有用。笔记。 当遇到严重的内核恐慌时,请执行++ then ++ then ++ and finally ++i
AltSysrqeAltSysrquAltSysrqiAltSysrqb
1.6 故障排除
1.6.1 在初始化脚本运行前挂起
如果机器在 initscripts 开始运行之前挂起,请使用
sysrq_always_enabled=1
1.6.2 SysRq 使用后有时会卡住,怎么办?
点击键盘两侧的 、 和 ,然后再次点击无效的 sysrq 序列将解决shift问题alt。control(即,像alt++之类的东西sysrq)z。
切换到另一个虚拟控制台(Ctrl+ Alt+ Fn1- Fn6)然后再返回Ctrl+ Alt+Fn7应该也有帮助。
1.6.3 我打了SysRq,但是好像什么都没有发生,怎么回事?
有些键盘发送的扫描码SysRq与预定义的 0x54 不同。因此,如果SysRq某个键盘无法开箱即用,请运行
showkey -s
以找出正确的扫描码序列。然后使用setkeycodes <sequence> 84
将此序列定义为通常的SysRq代码(84 是 0x54 的十进制)。最好将此命令放在引导脚本中。警告十秒钟内不输入任何内容 即可
退出。
showkey
1.6.4 我想给SysRq一个模块添加按键事件,它是如何工作的?
为了向表格注册一个基本功能,您必须首先包含 header
include/linux/sysrq.h
,这将定义您需要的所有其他内容。接下来,您必须创建一个 sysrq_key_op 结构,并用...填充它您将使用的密钥处理函数。
一个 help_msg 字符串,将在 SysRQ 打印帮助时打印
一个 action_msg 字符串,将在您的处理程序被调用之前打印出来。您的处理程序必须符合“sysrq.h”中的原型
sysrq_key_op 创建完成后,可以调用内核函数 register_sysrq_key(int key, struct sysrq_key_op *op_p); 如果表中的插槽为空,这将在表键“key”处注册“op_p”指向的操作。在模块卸载时,您必须调用函数 unregister_sysrq_key(int key, struct sysrq_key_op *op_p),该函数将从键 'key' 中删除 'op_p' 指向的键 op,当且仅当它当前已在该投币口。这是在您注册后插槽已被覆盖的情况下。
MagicSysRq系统通过在“drivers/char/sysrq.c”中定义的键操作查找表注册键操作来工作。该密钥表在编译时注册了许多操作,但它是可变的,并且导出了两个函数作为与其接口的 register_sysrq_key 和 unregister_sysrq_key。当然,永远不要在表中留下无效指针。IE; 当调用 register_sysrq_key() 的模块退出时,它必须调用 unregister_sysrq_key() 来清理它使用的 sysrq 密钥表条目。
笔记。
表中的空指针始终是安全的。
如果由于某种原因您觉得需要从 handle_sysrq 调用的函数中调用 handle_sysrq 函数,您必须意识到您处于锁定状态(您也处于中断处理程序中,这意味着不要休眠!),所以您必须改为调用 __handle_sysrq_nolock。
1.6.5 结论
使用Alt++SysRq和SthenU进行B同步,尝试重新挂载所有已挂载的文件系统,然后在需要时重新启动。无需更改系统文件。
如果Alt++没有重新启动系统,则可能需要编辑 /etc/sysctl.d/10-magic-sysrq.conf 以允许尝试应用SysRq++ (或/和在编辑 /proc/sys/kernel/ 之后)sysrq 位掩码,用于通过使用 sysrq 来启用系统的重新启动和关闭。您可以通过上述任何方法执行此操作。BAltSysRqBO
1.6.6 附录: 另见 - http://ubuntuforums.org/showthread.php?t=617349和https://www.kernel.org/doc/Documentation/sysrq.txt
对于那些与 sysrq 有关的 Apple MacBook 键盘问题,请参阅: https ://help.ubuntu.com/community/AppleKeyboard和https://bugs.launchpad.net/mactel-support/+bug/262408
相对有趣的信息——在观看了 2013 年 8 月 17 日的 BBC 节目“点击”和“网络战”文章后,我真的很注意。该节目也有自己的网站点击如果您不能观看该节目。一汽
前几天我遇到了这个问题,需要几秒钟才能工作。我什至可能已经完成了两次完整的 REISUB 序列。
另外,请确保您使用的是 sysrq 键(大多数笔记本电脑都需要您按住功能,所以您实际上是一次按住 4 个键)
几年前,我曾经使用Alt++ , , ,来重新启动或关闭卡住的机器,因为就像你一样,++SysRq有时不想工作。SUBOAltSysRqB
(此外,我首先需要养成使用Alt++的习惯。我认为使用SysRq++没有多大意义,因为如果要重新启动并重置它,为什么键盘模式很重要?)EIAltSysRqR
确保
alt
按住print screen
+reisub
。在我的电脑中,如果我按下alt
+print screen
并释放所有按钮,然后按下reisub
,它不是reboot
我的电脑。按住alt
它,然后按其他键有效。希望它可以帮助别人。