如何让SysRq在笔记本电脑上工作?

如何让SysRq在笔记本电脑上工作?

我的/proc/sys/kernel/sysrq包含数字 502,但 Alt+SysRq+... 似乎不适用于我的 HP Pavilion 笔记本电脑。我该如何解决这个问题?

更新 1:顺便说一句:我的打印屏幕键和任何其他键都没有像“SysRq”这样的附加标签。

更新2:

  • 硬件型号:HP Pavilion 17 笔记本电脑
  • 键盘布局:德语、QWERTZ

答案1

大多数笔记本电脑都需要按下Fn才能获取SysRq密钥。按Fn通常不会影响该Alt键(至少是左边的键),但可能会影响您在 后按的字母SysRq。幸运的是,你不需要SysRq和第三个键一起按,按住就足够了Alt。以下顺序适用于我见过的所有笔记本电脑:

  1. 按下并按住不动Alt
  2. Fn,按下SysRq键,然后松开两者。
  3. 简短地输入字母或标点符号键,例如S用于同步。
  4. 发布Alt

SysRq密钥通常与 相同PrintScreen。如果您的键盘没有标有SysRq或 的键PrintScreen,则可能没有发送 Linux 所需的扫描代码的键。对于神奇的 SysRq 来说,该SysRq键是发送扫描码 99 的键。

使用 PS/2 键盘(包括笔记本电脑的内置键盘),要了解按键发送的扫描代码,请登录文本控制台(按Ctrl+ Alt+F1切换到文本控制台,通常Ctrl按 + Alt+F7返回 GUI ),然后运行命令showkey -sshowkey -s在您键入时显示每个键的扫描码。通常,一个字节(两个十六进制数字)表示按键按下,然后另一个字节表示按键释放。对于一些键,您将获得一个由两个以 开头的字节组成的字节序列e0。按您感兴趣的键,然后等待 10 秒钟,然后showkey退出。

现在您已经识别了扫描代码,请运行setkeycodes … 99以 root 身份将该扫描代码分配给键代码 99。例如,如果showkey -s打印0xe0 0x6f 0xe0 0xef您选择的键,请运行setkeycodes e06f 99

要使此更改永久生效,请将setkeycodes命令添加到/etc/rc.local,或配置 udev 以更改键码映射。配置 udev 是 USB 键盘的唯一解决方案,setkeycodes不会影响 USB 键盘。

答案2

我一直在使用较新的 HP pavilion 笔记本电脑,同样的问题。对我有用的是按 AltGr 键和 printscreen 键

相关内容