如何将REISUB与Apple超薄铝合金键盘配合使用?
我正在使用没有SysRq键的Apple超薄铝键盘 :
当我需要输入REISUB时,我应该按什么键来输入神奇的SysRq键 ?
我手边没有铝键盘来测试这个,但是:
就这样做了。 如果您不想像第一个答案的第一个链接中建议的那样重新编译内核,那么有一种更简单的方法。 这是在第一个答案的第二个链接中概述的,但这是实际的过程:
-
下载keyfuzz的源代码
-
使用常用命令编译和安装
./configure make sudo make install
-
将以下行添加到/etc/rc.local文件中:
echo "458856 99" | sudo /usr/local/sbin/keyfuzz -s -d /dev/input/by-id/usb-Apple__Inc_Apple_Keyboard-event-kbd
现在应该可以按Alt + F13并发出REISUB。 在我的Xubuntu 15.10上工作。
这个答案也贴在这里 。
经过3到4个小时的艰苦搜索,阅读和反复试验, 这里有一个更彻底和通用的答案,适用于任何 Apple / Mac笔记本电脑或键盘,而不仅仅是“Apple超薄铝键盘”。 然而,在我的特殊情况下,我正在使用这个解决方案来运行Xubuntu 16.04 LTS的2008 MacBook白色。
非常感谢Bengt Olsson在这里的出色指示,这使我有必要开始找出缺失的细节。
此解决方案在用户空间中完成,并且不需要像某些建议那样重新编译内核。
-
下载keyfuzz的源代码并解压缩(我可以右键单击它并转到“Extract Here”以在我的GUI文件管理器中提取它)。 要了解有关keyfuzz的更多信息, 请参阅此处 。 它是在GNU GPL 2.0或更高版本的开源许可下发布的(yaaay开源!)。
- 不要使用太深的目录(或者可能使用空格),否则下面的
./configure
命令将失败。
- 不要使用太深的目录(或者可能使用空格),否则下面的
-
安装依赖项,否则运行下面的
./configure
可能会吐出一些错误:sudo apt-get update sudo apt-get install lynx xmltoman gengetopt
-
使用常用命令编译和安装keyfuzz:
./configure make sudo make install
-
导航到
/dev/input/by-id
并找到以-event-kbd
结尾的Apple键盘:cd /dev/input/by-id ls
对我来说就是这样
usb-Apple_Computer_Apple_Internal_Keyboard___Trackpad-event-kbd
-
/etc/rc.local
下行添加到/etc/rc.local
文件中,以使每次计算机启动时都运行此命令并加载此用户。 请注意,我们正在使用上面刚刚找到的Apple键盘输入。 此命令使用keyfuzz将Apple键盘或笔记本电脑上的F12或F13映射到系统“ Magic SysRq键 ” ,以进行软重启。- 要将F12映射到SysRq:
458821 99
。 非常感谢“pjjjv” 在这里搞清楚! - 要将F13映射到SysRq:
458856 99
。 -
由于我的MacBook 2008没有F13 ,我使用的是上面的F12选项。 还记得使用我们上面找到的适当的键盘输入。 我为
rc.local
添加的命令是:echo "458821 99" | keyfuzz -s -d /dev/input/by-id/usb-Apple_Computer_Apple_Internal_Keyboard___Trackpad-event-kbd
-
这是我的整个
/etc/rc.local
文件,带有相应的条目:#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. echo "458821 99" | keyfuzz -s -d /dev/input/by-id/usb-Apple_Computer_Apple_Internal_Keyboard___Trackpad-event-kbd exit 0
- 要将F12映射到SysRq:
-
重启。
现在我可以按Alt + F12 (或者你可以使用上面描述的Alt + F13 )并发出REISUB来软重启计算机。 在运行Xubuntu 16.04 LTS的MacBook 2008笔记本电脑上完美运行。
请注意,在发出命令之前,您可以通过首先按Ctrl + Alt + F1 (实际上是F1到F6工作)跳转到备用会话来按下每个键来查看REISUB返回的结果。 要返回主X Window会话,请使用Ctrl + Alt + F7 。
如果你得到一个结果说
This sysrq operation is disabled
这对于几个命令来说是正常的,因为它们会带来潜在的安全风险。 然而,Boot one仍然可以工作,允许您软重启计算机。 以下是mniess的更多相关信息:
从Ubuntu 12.10开始,可以更精细地控制启用Magic-SysRqfunction。 只需编辑文件/etc/sysctl.d/10-magic-sysrq.conf即可 。
该文件已有详细记录,并告诉您如何启用哪些function。 出于安全目的选择了当前默认值,并且只有在您知道需要时才应更改(出于安全隐患,请参阅错误#194676 )。
屁股上有多痛。 :)干杯。
快乐的“Linuxing”。
〜加布里埃尔史泰博
http://www.ElectricRCAircraftGuy.com